文档

Swift

更新时间:

安装

请参考alibabacloud-sdk-swift/alinlp-20200629进行安装,其中提供了CocoaPods、Carthage和Swift Package Manager三种安装方式

通过环境变量配置访问凭证(AKSK)

  1. 说明:

    1. 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。

    2. 强烈建议不要把AccessKey和AccessKeySecret保存到代码里,会存在密钥泄漏风险,在此提供通过配置环境变量的方式来保存和访问aksk

  2. Linux和macOS系统配置方法

    export NLP_AK_ENV=<access_key_id>
    export NLP_SK_ENV=<access_key_secret>

    其中<access_key_id>替换为已准备好的AccessKey ID,<access_key_secret>替换为AccessKey Secret,AccessKey ID和AccessKey Secret的获取方式见步骤二:获取账号的AccessKey

  3. Windows系统配置方法

    1. 新建环境变量文件,添加环境变量NLP_AK_ENVNLP_SK_ENV,并写入已准备好的AccessKey ID和AccessKey Secret。

    2. 重启Windows系统。

调用示例

以情感分析算法为例,示例代码如下所示

import Foundation
import AlibabacloudAlinlp20200629
import AlibabacloudOpenApi

import XCTest
import Tea


open class TestNLPAutom {
    
    public static func createClient(_ accessKeyId: String?, _ accessKeySecret: String?) throws -> AlibabacloudAlinlp20200629.Client {
        let config: AlibabacloudOpenApi.Config = AlibabacloudOpenApi.Config([
            "accessKeyId": accessKeyId!,
            "accessKeySecret": accessKeySecret!
        ])
        config.endpoint = "alinlp.cn-hangzhou.aliyuncs.com"
        return try AlibabacloudAlinlp20200629.Client(config)
    }
    
    @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *)
    public static func main(_ args: [String]?) async throws -> Void {
        let client: AlibabacloudAlinlp20200629.Client = try TestNLPAutom.createClient(ProcessInfo.processInfo.environment["NLP_AK_ENV"],ProcessInfo.processInfo.environment["NLP_SK_ENV"])
        let request : AlibabacloudAlinlp20200629.GetSaChGeneralRequest = AlibabacloudAlinlp20200629.GetSaChGeneralRequest([
            "ServiceCode": "alinlp",
            "Text": "服务很好"
        ])
        
        do {
            let response : GetSaChGeneralResponse =  try await client.getSaChGeneral(request)
            print(response.toMap());
        }
        catch {
            if error is Tea.TeaError {
                var e: Tea.ReuqestError = error as! Tea.ReuqestError
                print(e.code)
                print(e.message)
            }
        }
    }
}

注:GetSaChGeneralRequestGetSaChGeneralResponse类中的GetSaChGeneral是算法的actionName,需要替换成您需要的算法的值,并替换对应的请求参数,该值可在API参考文档中的请求参数-Action-示例值中找到;

image..png

调用异常自助排查

若调用过程中出现异常可对照调用异常自助排查(错误码汇总),找到表格中对应的描述,描述中包含具体错误原因和解决方案。

  • 本页导读 (0)
文档反馈