以下POST通过终端的cURL工作:
curl
--header 'Authorization: Bearer <access token here>'
--header 'Content-Type: application/json'
-X POST https://api.pushbullet.com/v2/pushes
--data-binary '{"type": "note", "title": "Note Title", "body": "Note Body"}'
但是,我无法在Arduino IDE中复制它(在C中)。我以为我可以使用HTTPClient对象,但是我只在文档中看到了GET的方法,而不是POST。
我会感谢任何朝着正确方向的点头。
答案 0 :(得分:2)
我会试试这个:
HttpClient client;
client.setHeader("Authorization: Bearer <access token here>");
client.addHeader();
client.setHeader("Content-Type: application/json");
client.addHeader();
client.post("https://api.pushbullet.com/v2/pushes", "{\"type\": \"note\", \"title\": \"Note Title\", \"body\": \"Note Body\"}"
我没有Yún来测试。尽管使用了帖子方法not being documented,但它does appear to exist ..
答案 1 :(得分:0)
在questo modo funziona中: - ):
Process avviso;
if (!avviso.running())
{
avviso.begin("curl");
avviso.addParameter("-k");
avviso.addParameter("-H");
avviso.addParameter("Authorization: Bearer v1EhAXIVEhms05l97PTHkQFRNWiK5q6L6fujzny9qxWvc");
avviso.addParameter("-X");
avviso.addParameter("POST");
avviso.addParameter("https://api.pushbullet.com/v2/pushes");
avviso.addParameter("-H");
avviso.addParameter("Content-Type:application/json");
avviso.addParameter("--data-binary");
String titolo = "Arduino";
avviso.addParameter("{\"type\": \"note\", \"title\": \""+titolo+ "\", \"body\": \"Note Body\"}");
avviso.run();
}
答案 2 :(得分:0)
Bridge库仅支持GET请求,但您可以使用Process类来压缩POST请求...
这些文章解释了如何使用Process类分别向ThingSpeak和Carriots apis发送数据,但你应该能够使用相同的技术击中你想要的任何api ......
希望这会有所帮助......我也会尝试这一点并跟进结果。
http://starter-kit.nettigo.eu/2014/arduino-yun-sending-data-thingspeak-post/ https://www.carriots.com/tutorials/send_stream/arduino_yun
答案 3 :(得分:0)
如果您的终端是http S ,请务必在致电client.noCheckSSL();
或post()
之前致电get()
!
这将使网桥 lib向 curl 添加
-K
标记,以便忽略安全性ssl证书等...这个也没有记录!