基于C#的商城比价api调用代码实例_第1页
基于C#的商城比价api调用代码实例_第2页
基于C#的商城比价api调用代码实例_第3页
免费预览已结束,剩余3页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于C#的商城比价api调用代码实例代码描述:基于C#的商城比价api调用代码实例代码平台:聚合数据usi ngSystem;usi ngSystem.Collect ion s.Ge neric;usi ngSyste m. Li nq;usi ngSystem.Text;usi ngSystem.Net;usi ngSystem.IO;usi ngXfrog.Net;usi ngSystem.Diag no stics;usi ngSystem.Web;/商品比价调用例如代码-聚合数据/ 在线接口文档: :/ juhe /docs/137/ 代码中 JsonObject类下载地址: 211

2、55665/7458439/ namespace ConsoleAPIclass Program static void Main( string args) stri ng appkey =“*“/配置您申请的appkey/1.查询支持的商城信息stri ng url1 = " :/api2.juheapi /mmb/allsites"var parameters1 = new Dictionary<string , string >();parameters1.Add( "key" , appkey); / 你申请的 keystring

3、result1 = sendPost(url1, parameters1,"get");JsonO bject n ewObj1 = new JsonObject(result1);"reason"String errorCodel = newObj1"error_code" .Value;if (errorCode1 ="0")Debug.WriteLine("成功");Debug.WriteL in e( newObj1);else/Debug.WriteLine("失败"

4、;);Debug.WriteLi ne( newObj1 "error_code".Value);.Value+ ":" +n ewObj12.比价简单查询接口stri ng url2 = " :/api2.juheapi /mmb/search/simple"var parameters2 =new Dictionary<stringstri ng >();parameters2.Add(parameters2.Add("get");"keyword" , ""

5、 );/要查询关键字"key" , appkey); / 你申请的 keystri ng result2 = sen dPost(url2, parameters2,JsonO bject n ewObj2 = new JsonObject(result2);"error_code" .Value;Stri ng errorCode2 = n ewObj2if (errorCode2 ="0")Debug.WriteLine("成功");Debug.WriteL in e( newObj2);else/Debug.

6、WriteLine("失败");.Value+ ":" +n ewObj2Debug.WriteLi ne( newObj2"error_code""reason".Value);3.比价复杂查询接口stri ng url3 = " :/api2.juheapi /mmb/search/complex"parameters3.Add("keyword","");/搜索关键字parameters3.Add("key" , appkey);

7、/你申请的keyparameters3.Add("Site" ,"");/商城编号,默认为0,即所有parameters3.Add("PriceMi n",);/取低价格,0表示尢取低价格限制parameters3.Add("PriceMax",);/最冋价格,0表示尢最冋价格限制parameters3.Add("PageNum","");/页号,大于0parameters3.Add("PageSize","");/每页返回结果数,上限

8、为 50parameters3.Add("Orderby" ,"");/排序规那么,1、score 按权重从高到底排序,默认2、price按价格从底到高排序3、sell按销售从高到底排序parameters3.Add("ZiYing","");/是否自营parameters3.Add("ExtraParameter","");/0:结果包含淘宝数据,var parameters3 =new Dictionary<string, string >();1:结果不包含

9、淘宝数据string result3 = sendPost(url3, parameters3,"get");JsonObject newObj3 =new JsonObject(result3);String errorCode3 = n ewObj3"error_code" .Value;if (errorCode3 ="0")Debug.WriteLine("成功");Debug.WriteL in e( newObj3);else/Debug.WriteLine("失败");Debug.

10、WriteLi ne(n ewObj3"error_code" .Value+ ":" +n ewObj3"reason" .Value);/ <summary>III (GET/POST)/ </summary>/ <param name="url">请求 URL</param>/ <param name="parameters">请求参数 </param>/ <param name="method&quo

11、t;>请求方法 </param>/ <returns>响应内容 </returns>stri ng , stri ngstaticstri ngsen dPost( stri ng url, IDict ion ary<arameters, stri ng method)if (method.ToLower() = "post")nullnull WebRequest req = WebResp onse rsp =System.IO.Stream reqStream =null ;tryreq = ( WebRequest)

12、WebRequest.Create(url); req.Method = method;req.KeepAlive = false ;req.ProtocolVers ion = Vers ion. Vers ion 10; req.Timeout = 5000;req.C onten tType ="applicati on /x-www-form-urle ncoded;charset=utf-8" ;byte postData = Encoding.UTF8.GetBytes(BuildQuery (parameters, "utf8");reqS

13、tream = req.GetRequestStream(); reqStream.Write(postData, 0, postData.Le ngth); rsp = ( WebResp on se)req.GetResp on se();En codi ng en codi ng = En codi ng.GetE ncodi ng(rsp.Charac terSet);retur nGetResp on seAsStri ng(rsp, en cod in g);catch (Exceptio n ex)return ex.Message;fin allyif (reqStream !

14、= null ) reqStream.Close();if (rsp != null ) rsp.Close();else /创立请求ate(url + WebRequest request = ( WebRequest)WebRequest.Cre "?" + BuildQuery(parameters,"utf8");/GET请求 request.Method ="GET"request.ReadWriteTimeout = 5000;request.C onten tType ="text/html;charset=U

15、TF-8" WebResp onse resp onse = ( WebResp on se)request.GetResp on se();Stream myResp on seStream = resp on se.GetResp on seStream();StreamReader myStreamReader = new StreamReader(myResponseStream, En codi ng.GetE ncodi ng("utf-8");/返回内容stri ngretStri ng = myStreamReader.ReadToE nd();r

16、eturnretStri ng;/ <summary>/组装普通文本请求参数。/ </summary>/ <param n ame="parameters">Key-Value形式请求参数字典 </param>/ <returns>URL编码后的请求数据 </returns>static stri ngBuildQuery(IDict ion ary<stri ng , stri ng > parameters,stri ngen code)Strin gBuilder postData =

17、 bool hasParam = false lEnu merator<KeyValuePair< GetE nu merator();while (dem.MoveNext()new StringBuilder();stri ng, stri ng >> dem = parameters.ty(value)codi ng.GetE ncod ing(stri ng stri ng / ifn ame = dem.Curre nt.Key; value = dem.Curre nt.Value;忽略参数名或参数值为空的参数(! string .IsNullOrEmpty

18、(name)/&& !stri ng.lsNullOrEmpif (hasParam)postData.Append("&");postData.Appe nd(n ame);postData.Append( "=");if (encode ="gb2312")postData.Append( Utility.UrlEncode(value, En "gb2312" );else if (en code ="utf8")postData.Appe nd( Utility.UrlE ncode(value, En codi ng.UTF8);elsepostData.Appe nd(value);hasParam

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论