我处于一个非常奇怪的情况,我昨晚在4小时内一直试图调试。 It looks a bit like this unanswered question.
我在Windows Phone 8上开发了一个片段,其中下载了json数据。
在我的代码段中,我使用以下内容从http://api.mtgox.com/api/2/BTCUSD/money/ticker下载数据
在所有四种情况下,它都在我的模拟器上工作。没有延迟,没有超时,没有403,没有404。
当我的一个朋友在他的模拟器上运行此代码时,似乎在7-8秒之后使用TargetInvocationException超时,并且InnerException包含NotFound
消息。但在他的模拟器上,任何其他网站都可以使用。
这意味着请求是: GET / api / 2 / BTCUSD / money / ticker 主持人:data.mtgox.com 连接:保持活力 等
但是根据我对Wireshark所做的三重,四重,非常顽固的验证,在此之后没有任何事情发生。这是空白的。所以它超时了。
在发生失败请求的PC上没有防病毒或防火墙。该页面在桌面浏览器中正常加载。在模拟器上,来自其他网站的任何其他json请求都有效。
因此,此特定地址不适用于特定模拟器。
我正在抓住CCNA的知识,但是找不到任何理由为什么网站会拒绝回应模拟器并接受回复?
奇怪的是,非工作PC上的片段在添加User-Agent后开始在C#桌面控制台应用程序中工作,但在他的WP模拟器中,此解决方法在上述四种方法中的任何一种中都不起作用。令人抓狂的是发送的数据包完全相同。
答案 0 :(得分:1)
我有类似的问题。解决方案是:
这对我有帮助(我使用了RestClient和WebClient)
我希望它也对你有所帮助。
问候。