跳到主要内容

HTTP 访问服务

HTTP 访问服务让开发者可以通过 HTTP 访问到自己的云开发资源。

从 3.4.0+ 版本,新增了 access 服务接口,你可以使用新增的接口,原 SDK 可以更换到新接口,或者继续使用旧的接口

提示

以下所有接口添加于 3.4.0+ 版本

创建 HTTP 访问服务

1. 接口描述

接口功能:创建 HTTP 访问服务。

接口声明:async createAccess(options: ICreateAccessOptions): Promise<ICreateRes>

2. 输入参数

字段必填类型说明
pathString访问路径,必须以 / 开头
nameString绑定的服务名称
typeNumber绑定的服务类型,云函数:1,Serverless 云应用:2
authBoolean是否开启 HTTP 访问服务对应的路径的鉴权

3. 返回结果

字段必填类型说明
RequestIdString请求唯一标识
APIIdStringHTTP 访问服务的 Id

4. 示例代码

import CloudBase from "@cloudbase/manager-node";

const app = new CloudBase({
secretId: "Your SecretId",
secretKey: "Your SecretKey",
envId: "Your envId" // 云开发环境ID,可在腾讯云云开发控制台获取
});

async function test() {
const res = await app.access.createAccess({
path: "/sum",
type: 1,
name: "sum"
});
const { APIId } = res;
console.log(APIId);
}

test();

获取 HTTP 访问服务

1. 接口描述

接口功能:获取 HTTP 访问服务

接口声明:async getAccessList(options: IGetOptions): Promise<IGetRes>

2. 输入参数

字段必填类型说明
pathString访问路径,必须以 / 开头
nameString绑定的服务名称
offsetNumber查询 List 的偏移量
limitNumber每次查询返回的数据条数

3. 返回结果

字段类型说明
RequestIdString请求唯一标识
APISetArray<CloudBaseGWAPI>HTTP 访问服务列表
TotalNumberHTTP 访问服务服务的总量
EnableServiceBoolean是否开启了 HTTP 访问服务

CloudBaseGWAPI

字段类型说明
APIIdStringAPIId
PathString自定义路径
TypeNumberservice type ,云函数默认为 1
NameString云函数名
CreateTimeNumberservice 创建时间
EnvIdString环境 ID
EnableAuthBooleanHTTP 访问服务对应的路径是否开启鉴权

4. 示例代码

import CloudBase from "@cloudbase/manager-node";

const manager = new CloudBase({
secretId: "Your SecretId",
secretKey: "Your SecretKey",
envId: "Your envId" // 云开发环境ID,可在腾讯云云开发控制台获取
});

async function test() {
const res = await app.access.getAccessList();
console.log(res);
}

test();

删除 HTTP 访问服务

1. 接口描述

接口功能:删除绑定的 HTTP 访问服务

接口声明:async deleteAccess(options: IDeleteOptions): Promise<IDeleteRes>

2. 输入参数

字段必填类型说明
nameString绑定的服务名称
typeString绑定的服务类型,云函数:1,Serverless 云应用:2
apiIdStringHTTP 访问服务的 Id
pathStringHTTP 访问服务的访问路径

deleteAccess 接口支持三种删除条件:

  • 根据绑定的服务名删除,即使用 nametype 选项,将会删除此服务绑定的所有访问路径
  • 根据服务 Id 删除,即 apiId 选项
  • 根据访问路径,即 path 选项

3. 返回结果

字段必填类型说明
RequestIdString请求唯一标识

4. 示例代码

import CloudBase from "@cloudbase/manager-node";

const manager = new CloudBase({
secretId: "Your SecretId",
secretKey: "Your SecretKey",
envId: "Your envId" // 云开发环境ID,可在腾讯云云开发控制台获取
});

async function test() {
const res = await app.access.deleteAccess({
name: "sum"
});
}

test();

切换 HTTP 访问服务鉴权

1. 接口描述

接口功能:切换 HTTP 访问服务鉴权,全局生效

接口声明:async switchAuth(auth: boolean): Promise<IUpdateRes>

2. 输入参数

字段必填类型说明
authBoolean是否开启 HTTP 访问服务鉴权,true 开通,false 关闭

3. 返回结果

字段必填类型说明
RequestIdString请求唯一标识

4. 示例代码

import CloudBase from "@cloudbase/manager-node";

const manager = new CloudBase({
secretId: "Your SecretId",
secretKey: "Your SecretKey",
envId: "Your envId" // 云开发环境ID,可在腾讯云云开发控制台获取
});

async function test() {
const res = await app.access.switchAuth(false);
console.log("切换鉴权", res);
}

test();

切换 HTTP 访问服务路径鉴权

1. 接口描述

接口功能:切换 HTTP 访问服务路径鉴权,只针对单个路径生效

接口声明:async switchPathAuth(options: IUpdateOptions)

2. 输入参数

字段必填类型说明
apiIdsArray<String>HTTP 访问服务 Id 列表
authBoolean是否开通服务鉴权,true 开通,false 关闭

3. 返回结果

字段必填类型说明
RequestIdString请求唯一标识

4. 示例代码

import CloudBase from "@cloudbase/manager-node";

const manager = new CloudBase({
secretId: "Your SecretId",
secretKey: "Your SecretKey",
envId: "Your envId" // 云开发环境ID,可在腾讯云云开发控制台获取
});

async function test() {
const res = await app.access.switchPathAuth({
apiIds: ["xxxxx"],
auth: false
});
}

test();

HTTP 访问服务添加自定义域名

1. 接口描述

接口功能:添加自定义域名

接口声明:async addCustomDomain(options: IDomainOptions): Promise<IAddRes>

绑定自定义域名时,请务必在您的自定义域名厂商处 配置 CNAME 域名解析

2. 输入参数

字段必填类型说明
domainString自定义域名
certIdString腾讯云 SSL 证书 Id,SSL 证书需要在调用账户下

3. 返回结果

字段必填类型说明
RequestIdString请求唯一标识

4. 示例代码

import CloudBase from "@cloudbase/manager-node";

const manager = new CloudBase({
secretId: "Your SecretId",
secretKey: "Your SecretKey",
envId: "Your envId" // 云开发环境ID,可在腾讯云云开发控制台获取
});

async function test() {
const res = await app.access.addCustomDomain({
domain: "xxx",
certId: "xxx"
});
}

test();

获取 HTTP 访问服务自定义域名列表

1. 接口描述

接口功能:获取自定义域名列表

接口声明:async getDomainList(): Promise<IDomainRes>

2. 输入参数

3. 返回结果

字段类型说明
RequestIdString请求唯一标识
DefaultDomainStringHTTP 访问服务默认域名
EnableServiceBoolean是否开启了 HTTP 访问服务
ServiceSetArray<IService>HTTP 访问服务域名列表

IService

字段类型说明
DomainString域名
OpenTimeNumber开启时间
StatusNumber绑定状态,1 绑定中;2 绑定失败;3 绑定成功

4. 示例代码

import CloudBase from "@cloudbase/manager-node";

const manager = new CloudBase({
secretId: "Your SecretId",
secretKey: "Your SecretKey",
envId: "Your envId" // 云开发环境ID,可在腾讯云云开发控制台获取
});

async function test() {
const res = await app.access.getDomainList();
}

test();

HTTP 访问服务删除自定义域名

1. 接口描述

接口功能:删除自定义域名

接口声明:async deleteCustomDomain(domain: string): Promise<IDeleteRes>

2. 输入参数

字段必填类型说明
domainString自定义域名

3. 返回结果

字段类型说明
RequestIdString请求唯一标识

4. 示例代码

import CloudBase from "@cloudbase/manager-node";

const manager = new CloudBase({
secretId: "Your SecretId",
secretKey: "Your SecretKey",
envId: "Your envId" // 云开发环境ID,可在腾讯云云开发控制台获取
});

async function test() {
const res = await app.access.deleteCustomDomain("xxxx");
}

test();