




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于C#的全国邮政编码查询接口调用代码实例代码描述:基于C#的全国邮政编码查询接口调用代码实例代码平台:聚合数据using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Net;using System.IO;using Xfrog.Net;using System.Diagnostics;using System.Web;/-/ 邮编查询调用示例代码 聚合数据/ 在线接口文档:/docs/66/ 代码中JsonObject类下载地址:/download/gcm3206021155665/7458439/-namespace ConsoleAPIclass Programstatic void Main(string args)string appkey = *; /配置您申请的appkey/1.邮编查询地名string url1 = /postcode/query;var parameters1 = new Dictionary();parameters1.Add(postcode , ); /邮编,如:215001parameters1.Add(key, appkey);/你申请的keyparameters1.Add(page , ); /页数,默认1parameters1.Add(pagesize , ); /每页返回,默认:20,最大不超过50parameters1.Add(dtype , ); /返回数据的格式,xml或json,默认jsonstring result1 = sendPost(url1, parameters1, get);JsonObject newObj1 = new JsonObject(result1);String errorCode1 = newObj1error_code.Value;if (errorCode1 = 0)Debug.WriteLine(成功);Debug.WriteLine(newObj1);else/Debug.WriteLine(失败);Debug.WriteLine(newObj1error_code.Value+:+newObj1reason.Value);/2.省份城市区域列表string url2 = /postcode/pcd;var parameters2 = new Dictionary();parameters2.Add(key, appkey);/你申请的keyparameters2.Add(dtype , ); /返回数据的格式,xml或json,默认jsonstring result2 = sendPost(url2, parameters2, get);JsonObject newObj2 = new JsonObject(result2);String errorCode2 = newObj2error_code.Value;if (errorCode2 = 0)Debug.WriteLine(成功);Debug.WriteLine(newObj2);else/Debug.WriteLine(失败);Debug.WriteLine(newObj2error_code.Value+:+newObj2reason.Value);/3.地名查询邮编string url3 = /postcode/search;var parameters3 = new Dictionary();parameters3.Add(pid , ); /省份IDparameters3.Add(cid , ); /城市IDparameters3.Add(did , ); /区域IDparameters3.Add(q , ); /地名关键字,如:木渎parameters3.Add(key, appkey);/你申请的keyparameters3.Add(dtype , ); /返回数据的格式,xml或json,默认jsonstring result3 = sendPost(url3, parameters3, get);JsonObject newObj3 = new JsonObject(result3);String errorCode3 = newObj3error_code.Value;if (errorCode3 = 0)Debug.WriteLine(成功);Debug.WriteLine(newObj3);else/Debug.WriteLine(失败);Debug.WriteLine(newObj3error_code.Value+:+newObj3reason.Value);/ / Http (GET/POST)/ / 请求URL/ 请求参数/ 请求方法/ 响应内容static string sendPost(string url, IDictionary parameters, string method)if (method.ToLower() = post)HttpWebRequest req = null;HttpWebResponse rsp = null;System.IO.Stream reqStream = null;tryreq = (HttpWebRequest)WebRequest.Create(url);req.Method = method;req.KeepAlive = false;req.ProtocolVersion = HttpVersion.Version10;req.Timeout = 5000;req.ContentType = application/x-www-form-urlencoded;charset=utf-8;byte postData = Encoding.UTF8.GetBytes(BuildQuery(parameters, utf8);reqStream = req.GetRequestStream();reqStream.Write(postData, 0, postData.Length);rsp = (HttpWebResponse)req.GetResponse();Encoding encoding = Encoding.GetEncoding(rsp.CharacterSet);return GetResponseAsString(rsp, encoding);catch (Exception ex)return ex.Message;finallyif (reqStream != null) reqStream.Close();if (rsp != null) rsp.Close();else/创建请求HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url + ? + BuildQuery(parameters, utf8);/GET请求request.Method = GET;request.ReadWriteTimeout = 5000;request.ContentType = text/html;charset=UTF-8;HttpWebResponse response = (HttpWebResponse)request.GetResponse();Stream myResponseStream = response.GetResponseStream();StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding(utf-8);/返回内容string retString = myStreamReader.ReadToEnd();return retString;/ / 组装普通文本请求参数。/ / Key-Value形式请求参数字典/ URL编码后的请求数据static string BuildQuery(IDictionary parameters, string encode)StringBuilder postData = new StringBuilder();bool hasParam = false;IEnumeratorKeyValuePair dem = parameters.GetEnumerator();while (dem.MoveNext()string name = dem.Current.Key;string value = dem.Current.Value;/ 忽略参数名或参数值为空的参数if (!string.IsNullOrEmpty(name)/& !string.IsNullOrEmpty(value)if (hasParam)postData.Append(&);postData.Append(name);postData.Append(=);if (encode = gb2312)postData.Append(HttpUtility.UrlEncode(value, Encoding.GetEncoding(gb2312);else if (encode = utf8)postData.Append(HttpUtility.UrlEncode(value, Encoding.UTF8);elsepostData.Append(value);hasParam = true;return postData.ToString();/ / 把响应流转换为文本。/ / 响应流对象/ 编码方式/ 响应文本static string GetResponseAsString(HttpWebResponse rsp, Encoding encoding)System.IO.Stream stream = null;StreamReader reader = null;try/ 以
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025公务员法知识试题及答案
- 2025年智慧物流运输安全评估与监管咨询服务协议
- 2025年医疗机构信息化建设项目咨询服务协议
- 2025年度专业音响设备租赁与行业标准修订合同
- 2025年度农村小产权房交易合同附加条款与物业维护责任书
- 新工业造型基础知识培训课件
- 2025年度智能社区宣传栏制作及社区文化特色活动推广服务协议
- 2025年度新型节能装饰材料采购合作合同标准范本
- 2025年商业中心电梯广告租赁及广告制作一体化服务合同
- 2025年现代化猪场租赁与生猪健康养殖标准化服务合同
- GB/T 45997-2025科技成果五元价值评估指南
- 转让网约车合同协议书范本
- 医院 捐赠协议书
- 理论中心组学习教育交流发言(五个进一步到位)
- 小学食堂供餐管理方案(3篇)
- 养老院重要环境因素控制措施
- 藏文教学课件
- 血透室手卫生管理课件
- 企业产学研用管理办法
- 2025年版义务教育体育与健康课程标准题库及答案(教师培训考试专用七套)
- 2025广东省中考数学试卷
评论
0/150
提交评论