HarmonyOS SDK API 接口

最近更新时间:2025-07-01 11:37:02

我的收藏

设置业务基本信息

类型定义

/**
加密方式
**/
enum EncryptType {
DES = 0, // DES 加密
AES = 1, // AES 加密
HTTPS = 2 // HTTPS 加密
}

/**
配置结构体
以下鉴权信息可在腾讯云控制台(https://console.cloud.tencent.com/httpdns/configure)开通服务后获取
**/
export interface HttpDnsConfig {
/**
* 授权id
*/
dnsId: string;
/**
* aes或者des加密密钥
*/
dnsKey?: string;
/**
* https加密密钥
*/
token?: string;
/**
* 控制加密方式
*/
encryptType: EncryptType;
/**
* 指定返回的ip地址类型,默认为 HttpDnsAddressTypeDual 双协议栈,暂时不支持自定义配置
*/
addressType?: AddressType;
/**
* ability上下文,内部使用系统API时使用
*/
context: common.UIAbilityContext;
/**
* 是否开启Debug日志
*/
debug?: boolean;
}

API 接口声明

/**
设置业务基本信息(腾讯云业务使用)
示例代码:
httpdns.getInstance().initConfig({
context: this.context,
dnsId: '****',
dnsKey: '****',
encryptType: EncryptType.DES,
debug: true,
});
@param config 业务配置结构体
*/
initConfig(config: HttpDnsConfig): void {}

/**
* 预解析域名。建议不要设置太多预解析域名,当前限制为最多 8 个域名。仅在初始化时触发。
* 示例代码:httpdns.getInstance().setPreResolvedDomains(['www.qq.com']);
* @param domains 域名数组
*/
setPreResolvedDomains(domains: string[]): void {}

/**
* 域名解析接口,接口返回 NSArray,固定长度为2,其中第一个值为 IPv4 地址,第二个值为 IPv6 地址。
* 示例代码:await httpdns.getInstance().getHostByName(host);
* @param domain 域名
* @return Promise<string[]> 查询到的 IP 数组
* 返回示例 [ipv4,ipv6], 如果解析失败返回[0,0]
*/
async getHostByName(domain: string): Promise<string[]> {}