private async Task<string> PostResponseContentAsync(string url, string xmlcontent) { try { var httpClient = new HttpClient(); httpClient.DefaultRequestHeaders.ExpectContinue = false; httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("text/xml")); httpClient.DefaultRequestHeaders.Add("UserAgent", "curl/7.12.1"); httpClient.DefaultRequestHeaders.Add("Host", "ping.baidu.com"); StringContent postContent = new StringContent(xmlcontent); postContent.Headers.ContentType = new MediaTypeHeaderValue("text/xml"); var response = await httpClient.PostAsync(url, postContent);//这行异常 An error occurred while sending the request. response.EnsureSuccessStatusCode(); if (response.StatusCode == System.Net.HttpStatusCode.OK) { return await response.Content.ReadAsStringAsync(); } else { return null; } } catch (Exception ex) { return null; } }
调用方法:
await PostResponseContentAsync("http://ping.baidu.com/sitemap?site=www.39xy.com&resource_name=sitemap&access_token=TTZhhO0M", "<?xml version='1.0' encoding='UTF-8'?><urlset><url><loc><![CDATA[http://www.39xy.com/thread-15-1-1.html]]></loc><lastmod>2013-09-24</lastmod><changefreq>daily</changefreq><priority>0.8</priority></url></urlset>")
一发送请求就报异常
An error occurred while sending the request. 请大神们帮助
我用这段代码测试了一下,可以正常运行
我每隔2秒点一次 就会异常 我把网址换成任意URL 都不行,请多点几下试试呢。难道是我网络的问题么,我POST一个HTTPS地址也不行
@芒果の冰: 建议看一下异常的详细信息
@dudu: 在下才疏学浅。请问如何能查看到异常的详细信息呢....是下面这样么
在 System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
在 System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar)
@芒果の冰: “基础链接已经关闭:连接被意外关闭”就是错误信息,如果不是网络问题,可能是被服务器断开了连接
@dudu: 多谢园长 确定不是代码问题我就放心了,非常感谢。