WP7和Http-Referer

时间:2011-06-18 10:22:51

标签: windows-phone-7 httpwebrequest referer

我编写了一个显示Disqus评论的应用程序,当我在桌面上将其作为.NET应用程序运行时,效果很好。它发送一个http请求,然后反序列化json对象。但是当我将代码移动到我的Windows Phone应用程序时,我收到了来自Disqus的错误。

似乎因为Windows Phone决定添加一个随机的http referer,我的请求失败了。我不允许在Windows手机上更改引用程序我收到消息“不能直接修改'Referer'标题。”如果我尝试这样做。

是否有针对此的解决方法,不需要我构建一个删除referer标头的代理?

2 个答案:

答案 0 :(得分:1)

从我可以从this post收集的内容中,如果不使用代理服务,则无法删除Referer header。显然这段代码适用于一个人:

var uri = new Uri ("http://some.where");
var request = WebRequestCreator.ClientHttp.Create (uri) as HttpWebRequest;
request.Headers ["user-agent"] = "My user agent string";
request.BeginGetResponse (...);

但是,似乎该主题中的普遍共识是没有办法改变它,但它应该在Mango版本中修复。

答案 1 :(得分:1)

而不是request.Referer = referer使用request.Headers[HttpRequestHeader.Referer] = referer,它将起作用