【问题标题】:Simcom SIM 808 SIM900 Azure Iot Hub - authorization header not possible to addSimcom SIM 808 SIM900 Azure IoT Hub - 无法添加授权标头
【发布时间】:2016-09-23 07:25:49
【问题描述】:
我正在使用 Simcom SIM 808 将数据发布到 Azure IoT Hub。我的问题是 Azure IoT Hub 在 Authorization 标头中需要一个 SAS 字符串,但我找不到添加此标头的方法。有人有使用 sim 808 和 Azure iot 的经验吗?是否可以将授权字符串添加到url?
我使用的是SIM800系列AT指令手册v 1.07.pdf供参考。
支持的标头参数是:
内容、用户数据等等。
【问题讨论】:
标签:
azure
azure-iot-hub
sim900
【解决方案1】:
在这里您可以找到我制作的一个程序,用于使用 SIMCOM 模块(SIM800、SIM900...)通过 HTTPS 将数据发送到我的 Azure IoT 中心:https://developer.mbed.org/users/BorjaTarazona/code/Azure_SIM800_HelloWorld/
我有同样的问题,我的问题是你需要在你的共享访问签名之前写“授权:”。您需要使用参数“USERDATA”,命令将如下所示:
AT+HTTPPARA="USERDATA","Authorization: YourSharedAccessSignature"\r\n
我使用 SIMCOM 模块通过 HTTPS 向 Azure 发送数据的命令是:
初始化
设置上下文类型:AT+SAPBR=3,1,"CONTYPE","GPRS"\r\n
设置 APN:AT+SAPBR=3,1,"APN","YourAPN"\r\n
- 打开承载:
AT+SAPBR=1,1\r\n
- 查询承载:
AT+SAPBR=2,1\r\n
- 启用 HTTP 功能:
AT+HTTPINIT\r\n
- 启用 SSL:
AT+HTTPSSL=1\r\n
数据传输
- 设置承载配置文件标识符:
AT+HTTPPARA="CID",1\r\n
- 设置网址:
AT+HTTPPARA="URL","YourURL"\r\n
- 设置共享访问签名:
AT+HTTPPARA="USERDATA","Authorization: YourSharedAccessSignature"\r\n
- 在 HTTP 标头中设置 Content-Type 字段:
AT+HTTPPARA="CONTENT","application/json"\r\n
- 设置要发送的JSON字符串:
AT+HTTPDATA=StringLength,20000\r\nYourJSONString
- HTTP POST:
AT+HTTPACTION=1\r\n