- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在尝试使用以太网屏蔽从我的 Arduino Mega 发送一个 Post 请求,我已经在互联网上尝试了很多代码,但我还没有完成
也已经从 NodeMCU-ESP8266 上完成了,但我不知道为什么 mega 变得如此棘手
从这段代码开始,一切顺利,除了我从未收到 POST 请求,我正在使用这个网站“requestcatcher”来测试 POST 请求
#include <Ethernet.h>
#include <SPI.h>
// Conf. mac
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
// Server to Post
char server[] = "http://abc.requestcatcher.com/test";
// Starting Ethernet client
EthernetClient client;
// =============== Connecting to internet =============== //
void setup() {
// Open serial communications and wait for port to open:
// wait for serial port to connect. Needed for native USB port only
Serial.begin(9600);
while (!Serial) {
;
}
// Connecting to internet
if (Ethernet.begin (mac) == 0) {
Serial.println("Can’t connect via DHCP");
}
// Give the Ethernet shield a second to initialize
delay(1000);
// Printing the IP Adress
Serial.print ("IP Address: ");
Serial.println(Ethernet.localIP());
}
/////============= Sending Post request ============= ////
void loop() {
Serial.println(" - Post request in process - ");
if (client.connect(server, 80) {
Serial.print(" Sending Post request ");
client.println("POST /test HTTP/1.1");
client.println("Host: abc.requestcatcher.com/");
client.println("Content-Type: application/x-www-form-urlencoded");
client.println("Content-Length: ");
client.println();
}
else {
Serial.println("Can’t reach the server");
}
// Wait 10 secs
delay(10000);
}
Arduino 像这样通过串行打印
IP Adress: 192.168.100.40
- Post request in process -
Sending Post request
- Post request in process -
Sending Post request
- Post request in process -
Sending Post request
所以我认为这意味着 Arduino 成功连接到互联网并且“client.connect(server, 80)”变为真,因为它打印“发送帖子请求”,但我不知道为什么请求捕获器永远无法获取任何发布请求,我使用在线应用程序以及 NodeMCU 测试了“requestcatcher”,它从除 Arduino 之外的所有应用程序获取发布请求,所以我认为这里一定有问题:
client.println("POST /test HTTP/1.1");
client.println("Host: abc.requestcatcher.com/");
client.println("Content-Type: application/x-www-form-urlencoded");
client.println("Content-Length: ");
client.println();
请帮忙,任何提示都会很有帮助
最佳答案
您必须删除这部分代码中的 ;
和右括号 if (client.connect(server, 80); {
=> if (client .connect(server, 80)) {...}
关于http - 从 Arduino 发送适当的 Post 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50673535/
这段代码在 Java 中的等价物是什么?我放了一部分,我对 I/O 部分感兴趣: int fd = open(FILE_NAME, O_WRONLY); int ret = 0; if (fd =
我正在尝试将维度为 d1,d2,d3 的张量 M[a1,a2,a3] reshape 为维度为 d2, d1*d3 的矩阵 M[a2,a1*a3]。我试过 M.reshape(d2,d1*d3) 但是
我是一名优秀的程序员,十分优秀!