Main Content

本页采用了机器翻译。点击此处可查看英文原文。

Write Data

使用 HTTP GET 或 POST 更新通道数据

请求

HTTP方法

POSTGET

URL

https://api.thingspeak.com/update.<format>

URL 参数

名称描述

<format>

(必需)HTTP 响应的格式,指定为空白、jsonxml

示例: https://api.thingspeak.com/update.json

主体

名称描述值类型
api_key

(必填)为此特定通道写入 API 密钥。您还可以使用 THINGSPEAKAPIKEY HTTP头文件发送写入 API 密钥。写入 API 密钥可在通道视图的 API Keys 选项卡上找到。

字符串

field<X>

(可选)字段 X 数据,其中 X 是字段 ID

任何
lat

(可选)纬度(以度为单位),指定为 -9090 之间的值。

小数

long

(可选)以度为单位的经度,指定为 -180180 之间的值。

小数
elevation

(可选)海拔高度(米)

整数
status

(可选)状态更新消息。

字符串
twitter(可选)Twitter® 链接到 ThingTweet 的用户名字符串
tweet(可选)Twitter状态更新字符串
created_at

(可选)创建源条目的日期,格式为 ISO 8601,示例:2014-12-31 23:59:59。您指定的日期在通道内必须是唯一的。可以使用 timezone 参数指定时区。

日期时间

内容类型

仅 POST 方法需要 Content-Type,GET 方法不需要。

application/x-www-form-urlencoded 用于大多数更新。

application/json 用于 JSON 格式的更新。

响应

成功

HTTP 状态代码

200 OK

主体

 文本示例

 JSON 示例

 XML 示例

错误

完整列表请参见 错误代码

局限性

所有时间戳必须是唯一的。您无法使用与通道中现有数据匹配的时间戳写入新数据。

示例

全部展开

您可以使用 Web 浏览器完成对 ThingSpeak™ 的 RESTful API 的 GET HTTP 请求。请注意,对于不会自动对 GET 请求进行 URL 编码的嵌入式设备或客户端,您必须在从设备发出 GET请求之前显式设置 URL encode 查询参数。

将 URL 复制到网络浏览器的地址栏,将 <write_api_key> 更改为您的用户 API 密钥,该密钥可在 Account 中找到>My Profile

https://api.thingspeak.com/update.json?api_key=<write_api_key>&field1=123

响应是新条目的 JSON 对象,以及来自服务器的 200 OK。

{
    "channel_id": 266256,
    "created_at": "2018-09-10T17:41:59Z",
    "entry_id": 2,
    "field1": "123",
    "field2": null,
    "field3": null,
    "field4": null,
    "field5": null,
    "field6": null,
    "field7": null,
    "field8": null,
    "latitude": null,
    "longitude": null,
    "elevation": null,
    "status": null
}

您可以使用 POSTMAN 使用 ThingSpeak 的 RESTful API 来尝试 HTTP 请求。此示例演示如何使用 POSTMAN 将数据写入通道。

这是 HTTP请求的格式。

POST https://api.thingspeak.com/update.json
       api_key=XXXXXXXXXXXXXXXX
       field1=123

  1. 在 POSTMAN 中,从 HTTP 谓词的下拉列表中选择 POST。

  2. 在地址字段中输入 https://api.thingspeak.com/update.json

  3. Body 部分下选择 x-www-form-urlencoded

  4. 输入 Parameter api_key 和您写入的 API 密钥,该密钥可在 Channels 中找到>API Keys

  5. 输入 Parameter field1Value 123。

响应是新条目的 JSON 对象,以及来自服务器的 200 OK。

您可以使用 JSON 格式将数据写入您的通道。此示例显示了一个 JSON 格式的 REST 调用,用于同时写入多个字段和状态信息。响应也是 JSON 格式。

POST api.thingspeak.com/update.json
Content-Type: application/json
 
{ 
        "api_key": "XXXXXXXXXXXXXXXX"  
        "created_at": "2018-04-23 21:36:20 +0200", 
        "field1": "John Johnson", 
        "field3": 56, 
        "field4": 555, 
        "field5": 444, 
        "latitude": "", 
        "longitude": "", 
        "status": "Please check in!" 
    
}

响应是新条目的 JSON 对象,以及来自服务器的 200 OK。

{
    "channel_id": 12345,
    "created_at": "2018-04-23 21:36:20 +0200", 
    "field1": "John Johnson", 
    "field3": 56, 
    "field4": 555, 
    "field5": 444, 
    "latitude": "", 
    "longitude": "", 
    "status": "Please check in!" 
}