




已阅读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山东济南市市属国有企业集中招聘高校毕业生771人笔试题库历年考点版附带答案详解
- 2025福建泉州市第一医院招聘编制内博士研究生学历学位工作人员42人考前自测高频考点模拟试题及完整答案详解一套
- 2025安徽马鞍山市博望区人民医院招聘派遣制工作人员8人模拟试卷及答案详解(夺冠系列)
- 2025太平人寿保险有限公司湖北分公司校园招聘5人笔试题库历年考点版附带答案详解
- 2025广东佛冈县水头镇选拔储备村(社区)“两委”后备人员考前自测高频考点模拟试题及1套完整答案详解
- 2025北京建工土木工程有限公司校园招聘43人笔试题库历年考点版附带答案详解
- 2025中国葛洲坝集团电力有限责任公司招聘成熟人才若干人笔试题库历年考点版附带答案详解
- 尘世是唯一的天堂课件
- 2025物资采购合同协议书模板
- 民政局与养老院关于五保户的协议书6篇
- 生产成本控制及预算管理表格模板
- 动漫艺术概论考试卷子及答案
- 山东省青岛市即墨区实验学校2025-2026学年九年级上学期开学考试英语试题(含答案)
- 浙江省浙南名校联盟2025-2026学年高二上学期开学返校联考英语试卷(含音频)
- 2025年国企中层干部竞聘笔试题及答案
- 材料返款协议书
- DB3202∕T 1075-2024 职业健康检查质量控制技术规范
- 教育惩戒培训课件
- 期末教学质量分析会校长讲话:把脉找因、沉心补课教学质量没有“回头路”
- 调经补血中药液行业跨境出海项目商业计划书
- 五金公司质量管理制度
评论
0/150
提交评论