我目前正在从事无线园艺项目,并且在这个领域还很新。

我的sht10传感器连接到Arduino Uno,并且GSM AT命令用于无线通信。我正在使用HTTP Get方法在我的Web服务上显示传感器数据。

传感器值是使用&温度和湿度存储的。

要在Web服务上显示传感器值,我将值转换为字符串。

soilSensor.measure(&temperature, &humidity, &dewpoint);// sensor value


但是我无法使用标准HTTP Get方法在Web服务上显示传感器数据,因为&(通过引用传递)。我得到的T = 0.00和H = 0.00
/>
那么,我的用引用传递的值转换变量的语法有什么问题,必须通过HTTP Get将其发送到Web服务有何不同? ?

评论

我不喜欢DeviceData = T =中这两个=的外观!顺便说一句,这是问这个问题的错误网站。

你有没有得到答案?如果是这样,请让其他人知道

#1 楼

HTTP GET请求的参数是键/值对,用与号分隔。&

键和值用等号分隔。

使用DeviceData=T=<value>可以解决此问题规则。

请参阅此页面,该页面说明您需要将%3D用作值的一部分。

=

但是,问自己是否真的需要通过那个DeviceData=T%3D<value>。有关HTTP查询字符串的详细信息,请参见此Wikipedia页面。

评论


好的,但是我的错误不是由于此。通过引用传递的值通过HTTP Get转换为字符串或发送到Web服务是否有任何区别?

–knowledgeispower
17-4-26在5:03



那是哪种编程语言?进行编辑后,您可能最好向S.O询问。但是请记住,如果尝试在参数中间传递等号而不将其编码为%3D,则会遇到问题。

–莫格说要恢复莫妮卡
17-4-26在7:08



#2 楼

为了使&符正常工作,还需要对其进行url编码。尝试用%26替换它,然后将其放在URL中。浮点数应该为%2E才能正常工作。

可以从https://www.w3schools.com/tags/ref_urlencode.asp
检查值