首页 > 代码库 > C#调用百度API方法,POST和GET请求
C#调用百度API方法,POST和GET请求
#region Get请求 /// <summary> /// HTTP GET方式请求数据. /// </summary> /// <param name="url">URL.</param> /// <returns>返回数据</returns> private static string HttpGet(string url) { HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url); request.Method = "GET"; request.Accept = "*/*"; request.Timeout = 15000; request.AllowAutoRedirect = false; WebResponse response = null; string responseStr = null; try { response = request.GetResponse(); if (response != null) { StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8); responseStr = reader.ReadToEnd(); reader.Close(); } } catch (Exception) { throw; } finally { request = null; response = null; } return responseStr; } #endregion #region POST请求 /// <summary> /// HTTP POST方式请求数据 /// </summary> /// <param name="url">URL.</param> /// <returns></returns> private static string HttpPost(string url) { HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url); request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; request.Accept = "*/*"; request.Timeout = 15000; request.AllowAutoRedirect = false; WebResponse response = null; string responseStr = null; try { response = request.GetResponse(); if (response != null) { StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8); responseStr = reader.ReadToEnd(); //File.WriteAllText(Server.MapPath("~/") + @"\test.txt", responseStr); reader.Close(); } } catch (Exception) { throw; } finally { request = null; response = null; } return responseStr; } #endregion #region HTTP POST方式请求数据 /// <summary> /// HTTP POST方式请求数据 /// </summary> /// <param name="url">URL.</param> /// <param name="param">POST的数据</param> /// <returns></returns> public static string HttpPost(string url, string param) { HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url); request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; request.Accept = "*/*"; request.Timeout = 15000; request.AllowAutoRedirect = false; StreamWriter requestStream = null; WebResponse response = null; string responseStr = null; try { requestStream = new StreamWriter(request.GetRequestStream()); requestStream.Write(param); requestStream.Close(); response = request.GetResponse(); if (response != null) { StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8); responseStr = reader.ReadToEnd(); File.WriteAllText(System.Web.HttpContext.Current.Server.MapPath("~//weixin/Weixin/") + @"\test.txt", responseStr); reader.Close(); } } catch (Exception) { throw; } finally { request = null; requestStream = null; response = null; } return responseStr; } #endregion 使用事例,调用百度API //非百度经纬度转化为百度经纬度 public static string Baidull = "http://api.map.baidu.com/geoconv/v1/?coords={0}&from=1&to=5&ak={1}"; BaidumapAK;//百度开发者AK; #region 非百度经纬度转化为百度经纬度 /// <summary> /// 非百度经纬度转化为百度经纬度 /// </summary> /// <param name="latitude">纬度</param> /// <param name="longitude">经度</param> /// <returns>百度纬度,经度</returns> public static string GetBaidull(string latitude, string longitude) { string text = ""; string location = longitude + "," + latitude; string url = string.Format(Baidull, location, BaidumapAK); string response = HttpGet(url); JObject jo = new JObject(); jo = (JObject)JsonConvert.DeserializeObject(response); latitude = jo["result"][0]["y"].ToString(); longitude = jo["result"][0]["x"].ToString(); text = latitude + "," + longitude; return text; }
本文出自 “梦里开花,梦里飞” 博客,请务必保留此出处http://wppeng.blog.51cto.com/9894483/1884452
C#调用百度API方法,POST和GET请求
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。