Arduino和php之间的连接

Arduino和php之间的连接,php,http-headers,arduino,Php,Http Headers,Arduino,简单地说,我尝试使用下面的代码获取包含Arduino Ethernet shield的TXT文件 原始代码 我想使用如下数据if(strcmp(test,“123321”)==0)Serial.println(“OK”) 但是当它有http头时,我不能这样做,所以我只想获取文本更改client.println(“get/latest.txt http/1.1”)toclient.println(“GET/latest.txt”)我使用的代码完全相同。您需要先将响应保存在字符串中。所以,在read

简单地说,我尝试使用下面的代码获取包含Arduino Ethernet shield的TXT文件
原始代码

我想使用如下数据
if(strcmp(test,“123321”)==0)Serial.println(“OK”)

但是当它有http头时,我不能这样做,所以我只想获取文本更改
client.println(“get/latest.txt http/1.1”)
to
client.println(“GET/latest.txt”)

我使用的代码完全相同。您需要先将响应保存在字符串中。所以,在read语句所在的位置,需要一个字符串附加运算符,并将“if”更改为“while”,类似于

while(client.available()) 
    {
        c = client.read();
        response = response + c; 
    }
确保将字符串“response”声明在void循环()之外。这将在“响应”中保存服务器的整个响应。之后,您可以应用子字符串函数从“响应”中提取所需的文本。有关“子字符串”的详细信息,请访问Arduino的官方网页。 在我的例子中,它是这样的:

r = (response.substring(165,174));
要找到标题的结束和原始响应的开始,这将是一个有点棘手的问题,我建议使用试错法。继续尝试任意字符串索引。每次打印“r”以查看距离有多近。也可以从HTTP 1.1到123321的开头计算字符数,包括空格和“\n”。 因此变量“r”将携带您提供给response.substring(,)的文本b/w索引位置。在那之后,你可以用“r”来做任何你喜欢的事情

看看我的代码。我希望有帮助。

这个答案出现在低质量审查队列中,可能是因为您没有解释代码。如果你真的解释了(在你的答案中),你就更有可能获得更多的选票!
while(client.available()) 
    {
        c = client.read();
        response = response + c; 
    }
r = (response.substring(165,174));