調用該介面查詢指定解析器的詳細資料,包括解析器基本資料、解析指令碼、運行狀態和關聯的資料來源等。
QPS限制
單個阿里雲帳號調用該介面的每秒請求數(QPS)最大限制為10。
說明 RAM使用者共用阿里雲帳號配額。
調試
您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。
請求參數
| 名稱 | 類型 | 是否必選 | 樣本值 | 描述 |
| Action | String | 是 | GetParser | 系統規定參數。取值:GetParser。 |
| ParserId | Long | 是 | 1001 | 解析器ID。您可調用介面ListParser,查詢解析器列表,擷取ParserId。 |
| IotInstanceId | String | 否 | iot-n8t*** | 執行個體ID。您可在物聯網平台控制台的執行個體概覽頁面,查看當前執行個體的ID。 重要
執行個體的更多資訊,請參見執行個體概述。 |
調用API時,除了本文介紹的該API的特有請求參數,還需傳入公用請求參數。公用請求參數說明,請參見公用參數文檔。
返回資料
| 名稱 | 類型 | 樣本值 | 描述 |
| Code | String | iot.system.SystemException | 調用失敗時,返回的錯誤碼。更多資訊,請參見錯誤碼。 |
| Data | Struct | 返回的解析器詳細資料。 |
|
| DataSourceId | Long | 1003 | 解析器關聯的資料來源ID。 |
| Description | String | 轉寄資料。 | 解析器描述。 |
| Name | String | DataParser | 解析器名稱。 |
| ParserId | Long | 1001 | 解析器ID。 |
| Script | String | var data = payload("json"); var h = data.items.Humidity.value; var t = data.items.Temperature.value; writeTsdb(1000,timestamp(),"temperature", t , {"deviceName":deviceName()}); writeTsdb(1000,timestamp(),"humidity", h , {"deviceName":deviceName()}); | 解析器發行指令碼。 |
| ScriptDraft | String | var data = payload("json"); var h = data.items.Humidity.value; var t = data.items.Temperature.value; writeTsdb(1000,timestamp(),"temperature", t , {"deviceName":deviceName()}); writeTsdb(1000,timestamp(),"humidity", h , {"deviceName":deviceName()}); | 解析器指令碼的草稿。 |
| Status | String | STOP | 解析器運行狀態。
|
| UtcCreated | String | 2022-03-27T12:45:43.000Z | 建立解析器的UTC時間。格式為 |
| UtcModified | String | 2022-04-27T12:45:43.000Z | 更新解析器的UTC時間。格式為 |
| ErrorMessage | String | 系統異常 | 調用失敗時,返回的出錯資訊。 |
| RequestId | String | E4C0FF92-2A86-41DB-92D3-73B60310D25E | 阿里雲為該請求產生的唯一識別碼。 |
| Success | Boolean | true | 表示是否調用成功。
|
樣本
請求樣本
http(s)://iot.cn-shanghai.aliyuncs.com/?Action=GetParser
&ParserId=1001
&<公用請求參數>
正常返回樣本
XML格式
<GetParserResponse>
<RequestId>E4C0FF92-2A86-41DB-92D3-73B60310D25E</RequestId>
<Data>
<Status>STOP</Status>
<Script>var data = payload("json"); var h = data.items.Humidity.value; var t = data.items.Temperature.value; writeTsdb(1000,timestamp(),"temperature", t , {"deviceName":deviceName()}); writeTsdb(1000,timestamp(),"humidity", h , {"deviceName":deviceName()});</Script>
<Description>轉寄資料。</Description>
<UtcCreated>2022-03-27T12:45:43.000Z</UtcCreated>
<ScriptDraft>var data = payload("json"); var h = data.items.Humidity.value; var t = data.items.Temperature.value; writeTsdb(1000,timestamp(),"temperature", t , {"deviceName":deviceName()}); writeTsdb(1000,timestamp(),"humidity", h , {"deviceName":deviceName()});</ScriptDraft>
<UtcModified>2022-04-27T12:45:43.000Z</UtcModified>
<ParserId>1001</ParserId>
<DataSourceId>1003</DataSourceId>
<Name>DataParser</Name>
</Data>
<Success>true</Success>
</GetParserResponse>
JSON格式
{
"RequestId": "E4C0FF92-2A86-41DB-92D3-73B60310D25E",
"Data": {
"Status": "STOP",
"Script": "var data = payload(\"json\"); var h = data.items.Humidity.value; var t = data.items.Temperature.value; writeTsdb(1000,timestamp(),\"temperature\", t , {\"deviceName\":deviceName()}); writeTsdb(1000,timestamp(),\"humidity\", h , {\"deviceName\":deviceName()});",
"Description": "轉寄資料。",
"UtcCreated": "2022-03-27T12:45:43.000Z",
"ScriptDraft": "var data = payload(\"json\"); var h = data.items.Humidity.value; var t = data.items.Temperature.value; writeTsdb(1000,timestamp(),\"temperature\", t , {\"deviceName\":deviceName()}); writeTsdb(1000,timestamp(),\"humidity\", h , {\"deviceName\":deviceName()});",
"UtcModified": "2022-04-27T12:45:43.000Z",
"ParserId": 1001,
"DataSourceId": 1003,
"Name": "DataParser"
},
"Success": true
}
錯誤碼
| HttpCode | 錯誤碼 | 錯誤資訊 | 描述 |
| 400 | iot.system.SystemException | An internal error occurred. Try again later. | 系統異常。 |
| 400 | iot.common.InvalidFormattedParameter | The parameter format is invalid. | 參數格式錯誤。 |
| 400 | iot.rule.QueryRuleFailed | An error occurred while querying the rule. | 查詢規則失敗。 |
| 400 | iot.rule.NotFoundRule | there are no rules | 規則不存在 |
訪問錯誤中心查看更多錯誤碼。