C++ SDK
C++ SDK使用示例。
获取SDK
git clone https://github.com/aliyun/aliyun-openapi-cpp-sdk.git
说明:阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。
强烈建议不要把AccessKey和AccessKeySecret保存到代码里,会存在密钥泄漏风险,在此提供通过配置环境变量的方式来保存和访问aksk
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
Windows系统配置方法新建环境变量文件,添加环境变量NLP_AK_ENV和NLP_SK_ENV,并写入已准备好的AccessKey ID和AccessKey Secret。重启Windows系统。
使用示例
#include <iostream>
#include <alibabacloud/core/AlibabaCloud.h>
#include <alibabacloud/nlp-automl/Nlp_automlClient.h>
#include <cstdlib> // 包含getenv函数的头文件
using namespace AlibabaCloud;
using namespace AlibabaCloud::Nlp_automl;
int main(int argc, char** argv) {
// 初始化 SDK
AlibabaCloud::InitializeSdk();
const char* access_key_id = std::getenv("NLP_AK_ENV");
const char* access_key_secret = std::getenv("NLP_SK_ENV");
// 配置 nlp_automl 实例
ClientConfiguration configuration("<your-region-id>"); //取值"cn-hangzhou"
Nlp_automlClient client(access_key_id, access_key_secret, configuration);
// 创建API请求并设置参数
Model::GetPredictResultRequest request;
request.setModelId(1818);
request.setContent("中华人民共和国解放军");
auto outcome = client.getPredictResult(request);
if (!outcome.isSuccess()) {
// 异常处理
std::cout << outcome.error().errorCode() << std::endl;
AlibabaCloud::ShutdownSdk();
return -1;
}
std::cout << "totalCount: " << outcome.result().getTotalCount() << std::endl;
// 关闭 SDK
AlibabaCloud::ShutdownSdk();
return 0;
}