Arduino以太网屏蔽提出请求但没有响应

时间:2013-12-11 19:44:50

标签: http get arduino

我希望我的arduino向我本地网络上的uri发送get请求。我可以打开浏览器并手动粘贴请求,它可以正常工作。我也在使用jQuery的网页上做了同样的请求没问题。

我已经按照Arduino的教程进行了操作,如果有些人可以提供帮助,我看不出我做错了什么。

#include <SPI.h>
#include <Ethernet.h>

// Enter a MAC address for your controller below.
// Newer Ethernet shields have a MAC address printed on a sticker on the shield
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress server(192,168,0,34);

// Set the static IP address 
IPAddress ip(192,168,0,177);

// Initialize the Ethernet client library
EthernetClient client;

void setup() {
// Open serial communications and wait for port to open:
Serial.begin(9600);
Ethernet.begin(mac, ip);

// give the Ethernet shield a second to initialize:
delay(1000);

}

void loop()
{
 Serial.println("connecting...");

   if (client.connect(server, 81)) {
   Serial.println("connected");

   client.print("GET /tenHsServer/tenHsServer.aspx?t=ab&f=ToggleDevice&d=");
   client.print("E3");
   client.println(" HTTP/1.1");
   client.println("Host: 192.168.0.34");
   client.println(""); //mandatory blank line 
 } 
 }

1 个答案:

答案 0 :(得分:0)

对于这类问题,您应该了解网络debbugging工具。我最喜欢的是fiddler2。但是它仅适用于Windows。对于其他平台,请在网上搜索http debug proxy。除此之外,始终有wiresharkncat

一旦有了这样的工具,只需查看生成的流量并将其与实际工作的流量进行比较。这通常可以很快找到问题所在。