wido怎么与asp.net的web service连接?
各位DF侠,我想用wifo里的cc3000 get 和 post 与 web service 做交换数据。请问这个部分怎么写呢?或是有什么参考的网址吗?谢谢各位DF侠们。
hanjiaqileon 发表于 2015-3-18 17:35
谢谢,还有一个问题是,如果asp.net的asmx文件里面有调用,需要上传数据,然后再获取返回的数据,这个怎么 ...
http://www.webxml.com.cn/WebServices/WeatherWebService.asmx/getWeatherbyCityName?theCityName=%E5%8C%97%E4%BA%AC
返回xml, 里面是string数组
<ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://WebXml.com.cn/">
<string>直辖市</string>
<string>北京</string>
<string>54511</string>
<string>54511.jpg</string>
<string>2015-3-19 21:51:56</string>
<string>4℃/20℃</string>
<string>3月19日 多云转晴</string>
<string>无持续风向微风</string>
<string>1.gif</string>
<string>0.gif</string>
<string>今日天气实况:气温:13℃;风向/风力:南风 2级;湿度:28%;空气质量:暂无;紫外线强度:中等</string>
<string>
太阳镜指数:必要。建议佩戴透射比为1级的遮阳镜。 穿衣指数:较冷。建议着厚外套加毛衣等服装。 旅游指数:适宜。天气较好,可尽情地享受大自然的风光。 运动指数:较适宜。户外运动请注意防晒。 洗车指数:较适宜。无雨且风力较小,易保持清洁度。 化妆指数:保湿。请选用中性保湿型霜类化妆品。 感冒指数:较易发。温差较大,较易感冒,注意防护。 空气污染指数:暂无。 紫外线指数:中等。涂擦SPF大于15、PA+防晒护肤品。 舒适度指数:舒适。白天不冷不热,风力不大。
</string>
<string>5℃/20℃</string>
<string>3月20日 晴转多云</string>
<string>无持续风向微风转北风3-4级</string>
<string>0.gif</string>
<string>1.gif</string>
<string>4℃/19℃</string>
<string>3月21日 多云</string>
<string>北风4-5级转3-4级</string>
<string>1.gif</string>
<string>1.gif</string>
<string>
北京位于华北平原西北边缘,市中心位于北纬39度,东经116度,四周被河北省围着,东南和天津市相接。全市面积一万六千多平方公里,辖12区6县,人口1100余万。北京为暖温带半湿润大陆性季风气候,夏季炎热多雨,冬季寒冷干燥,春、秋短促,年平均气温10-12摄氏度。北京是世界历史文化名城和古都之一。早在七十万年前,北京周口店地区就出现了原始人群部落“北京人”。而北京建城也已有两千多年的历史,最初见于记载的名字为“蓟”。公元前1045年北京成为蓟、燕等诸侯国的都城;公元前221年秦始皇统一中国以来,北京一直是中国北方重镇和地方中心;自公元938年以来,北京又先后成为辽陪都、金上都、元大都、明清国都。1949年10月1日正式定为中华人民共和国首都。北京具有丰富的旅游资源,对外开放的旅游景点达200多处,有世界上最大的皇宫紫禁城、祭天神庙天坛、皇家花园北海、皇家园林颐和园,还有八达岭、慕田峪、司马台长城以及世界上最大的四合院恭王府等各胜古迹。全市共有文物古迹7309项,其中国家文物保护单位42个,市级文物保护单位222个。北京的市树为国槐和侧柏,市花为月季和菊花。另外,北京出产的象牙雕刻、玉器雕刻、景泰蓝、地毯等传统手工艺品驰誉世界。
</string>
</ArrayOfString>
原理上很简单:
1)建立webservice
2)用wido发送get 请求, webservice返回一堆xml的字符,返回内容由webservice定义
3)在wido中进行字符串处理,将有效信息提出
http://forum.arduino.cc/index.php?topic=39023.0 本论坛里有些wido应用的例子,你可以搜下另外 adafruit may help 本帖最后由 hanjiaqileon 于 2015-3-18 17:41 编辑
Ricky 发表于 2015-3-18 17:03
原理上很简单:
1)建立webservice
谢谢,还有一个问题是,如果asp.net的asmx文件里面有调用,需要上传数据,然后再获取返回的数据,这个怎么弄呢?
比如 http://www.webxml.com.cn/WebServices/WeatherWebService.asmx 这里面我怎么调用里面的天气呢?
用个xml parser将<string>里的字符提取出来,存在变量里即可。 Ricky 发表于 2015-3-19 22:28
用个xml parser将里的字符提取出来,存在变量里即可。
试了一下,问题出现在POST中。
String PostData = "test";
Serial.println(PostData.length());
www.println("POST /MicroduinoTest.asmx/inputString HTTP/1.1");
www.println("Host: www.hanjiaqileon.com");
www.println("Content-Type: application/x-www-form-urlencoded");
www.print("Content-Length: ");
www.println(PostData.length());
www.println();
www.print("str=");
www.println(PostData);
www.println();
返回之后是这样的
HTTP/1.1 200 OK
Cache-Control: private, max-age=0
Content-Type: text/xml; charset=utf-8
Server: Microsoft-IIS/8.0
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Tue, 24 Mar 2015 13:03:56 GMT
Content-Length: 78
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://tempuri.org/" />HTTP/1.1 400 Bad Request
Content-Type: text/html; charset=us-ascii
Server: Microsoft-HTTPAPI/2.0
Date: Tue, 24 Mar 2015 13:03:56 GMT
Connection: close
Content-Length: 326
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd">
<HTML><HEAD><TITLE>Bad Request</TITLE>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=us-ascii"></HEAD>
<BODY><h2>Bad Request - Invalid Verb</h2>
<hr><p>HTTP Error 400. The request verb is invalid.</p>
</BODY></HTML>
就不知道怎么办了:dizzy::dizzy::dizzy:
页:
[1]