# 快速开始:我的第一个云函数

# 第 1 步:创建目录和云函数文件

首先我们进入项目根目录,创建 functions 文件夹。

随后在 functions 下创建 hello_world 文件夹,包含 index.jspackage.json 两个文件。

此时目录结构如下:

└── functions
    └── hello_world
        ├── index.js
        └── package.json

index.js 内容如下:

exports.main = function() {
  return 'Hello World!'
}

package.json 内容如下:

{
  "name": "hello_world",
  "version": "1.0.0",
  "main": "index.js"
}

# 第 2 步:发布云函数

    # 第 3 步:调用云函数

    调用云函数有两种方法:

    • 使用云开发 SDK
    • 使用云接入提供的 HTTP 服务

    # 使用 SDK 调用云函数

      # 使用云接入 HTTP 调用云函数

      执行以下命令创建一条云接入路由,路径为 /hello,指向的云函数为 hello_world

      cloudbase service:create -p /hello -f hello_world -e <env-id>
      
      

      提示:命令中的 <env-id> 是开发者的环境 ID

      随后便可以通过 https://<env-id>.service.tcloudbase.com/hello 调用云函数,并获得返回结果。

      # 第 4 步(可选):在云函数内使用 Node.js SDK

      首先,我们在 functions/hello_world/ 路径下,执行以下命令,安装 Node.js SDK:

      npm install --save @cloudbase/node-sdk
      

      然后把 functions/hello_world/index.js 内容改为:

      const cloudbase = require('@cloudbase/node-sdk')
      exports.main = function() {
        if (cloudbase) {
          return 'Happy Hack With Cloudbase!'
        }
      }
      

      然后我们重新部署云函数:

      cloudbase functions:deploy hello_world -e <env-id>
      

      然后在云函数的调用结果里,我们便可以看到结果:

      app
        .callFunction({
          name: 'hello_world'
        })
        .then(res => {
          console.log(res.result) // 'Happy Hack With Cloudbase!'
        })