WinRT C# - HttpRequestException:错误500

时间:2013-04-14 15:37:01

标签: windows-8 windows-runtime dotnet-httpclient

我正在尝试将我的WP8应用程序移植到Windows应用商店应用程序,并且在执行HttpClient的getStringAsync时遇到HttpRequestException。

以下是给我提出问题的代码段:

HttpClient client = new HttpClient();
            Stream stream = await client.GetStreamAsync(new Uri("http://www.psnapi.com.ar/ps3/api/psn.asmx/getPSNID?sPSNID=philippemexes", UriKind.Absolute));

这是完整的异常消息:

  

HttpRequestException:响应状态代码不表示成功:500(内部服务器错误)。   我必须说明所指示的URL在浏览器中工作,并且完全相同的代码也可以在Windows Phone项目中正常工作。

有谁知道哪个可能是一个可能的解决方案,以获得所需的xml字符串,为什么这适用于Windows Phone而不适用于WinRT应用程序?

非常感谢你 斯特凡诺

1 个答案:

答案 0 :(得分:4)

Fiddler是你的朋友!

如果请求标头中没有传递用户代理字符串,则表示服务对于调用不太满意。尝试添加:

client.DefaultRequestHeaders.Add("user-agent", "blah blah blah");
你的两行代码之间的

blah blah blah部分:)没有任何魔力,它似乎适用于您的服务,但谁知道服务对UA字符串的解释是什么(如果有的话)。