开发者可以通过Python SDK,调用物联网数据分析中生成的API。
步骤一:安装SDK
步骤二:初始化SDK
参考如下内容,初始化SDK。
说明 以下示例以华东2(上海:cn-shanghai)地域为例。您在设置时,需使用您自己的物联网平台地域。
accessKeyId = '<your accessKey>'
accessKeySecret = '<your accessSecret>'
client = client.AcsClient(accessKeyId, accessKeySecret, 'cn-shanghai')
其中,<your accessKey>为您账号的AccessKeyId,<your accessSecret>为AccessKeyId对应的AccessKeySecret。您可在阿里云官网控制台AccessKey管理中创建或查看您的AccessKey。
步骤三:发起调用
发起API调用示例如下。
request = InvokeDataAPIServiceRequest()
request.set_accept_format('json')
request.set_method(method_type.POST)
request.set_ApiSrn("your_ApiSrn")
request.set_Params([
{
"ParamName": "your_param_name",
"ParamValue": "your_param_value",
"ListParamValues":[],
"ListParamType": "VARCHAR"
}
])
response = client.do_action_with_exception(request)
print(response)
其中,部分参数按如下说明替换参数值。
参数 | 是否必选 | 说明 |
---|---|---|
your_ApiSrn | 是 | API的资源定位符,请替换为您实际的API资源定位符。ApiSrn值的查询方法请参见如何使用数据服务。 |
ParamName | 否 | 待查询数据的请求参数名称,请将your_param_name替换为您实际的API的请求参数名称。
说明 如果API接口未配置请求参数,忽略该参数和ParamValue的配置。
|
ParamValue | 否 | 待查询数据的请求参数值,请将your_param_value替换为您实际的API的请求参数值。 |
ListParamValues | 是 | ARRAY类型的参数值列表。
说明
|
ListParamType | 否 | ARRAY类型参数值的数据类型。目前仅支持VARCHAR、INTEGER、BIGINT、BOOLEAN、DECIMAL、TIMESTAMP。 |
完整调用示例
#!/usr/bin/env python
# coding=utf-8
from aliyunsdkcore.client import AcsClient
from aliyunsdkcore.acs_exception.exceptions import ClientException
from aliyunsdkcore.acs_exception.exceptions import ServerException
from aliyunsdkcore.http import method_type
from aliyunsdkiot.request.v20180120.InvokeDataAPIServiceRequest import InvokeDataAPIServiceRequest
accessKey = "LTAI0********Z0"
accessSecret = "vmlXLPTPt********CCvLUB"
client = AcsClient(accessKey, accessSecret, 'cn-shanghai')
request = InvokeDataAPIServiceRequest()
request.set_accept_format('json')
request.set_method(method_type.POST)
request.set_ApiSrn("acs:iot:*:172644********564:serveapi/****")
request.set_Params([
{
# Array类型参数
"ParamName": "name",
"ListParamValues": ["television"],
"ListParamType": "VARCHAR" # ListParamValues中值的具体数据类型
},
{
# 非Array类型参数,ListParamValues 需要赋空值
"ParamName": "pageNo",
"ParamValue": "0",
"ListParamValues": []
},
{
"ParamName": "pageSize",
"ParamValue": "10",
"ListParamValues": []
},
])
response = client.do_action_with_exception(request)
print(response)
在文档使用中是否遇到以下问题
更多建议
匿名提交