【发布时间】:2013-03-12 08:30:12
【问题描述】:
我在我的一个执行大量 WebRequest 的项目中使用 PCL。
我必须设置一个 UserAgent 否则我的 API 将不接受调用。这在 Windows Phone 8 和 Windows 8 中很好,因为 HttpWebRequest 有一个 Headers 属性,所以你可以这样做:
var request = (HttpWebRequest)WebRequest.Create(cUrlLogin);
request.Headers[HttpRequestHeader.UserAgent] = cUserAgent;
request.Headers[HttpRequestHeader.Referer] = cUrlHalo;
但是在 Windows Forms 和 WPF 中,我需要使用方法来设置它,然后才这样做:
var request = (HttpWebRequest)WebRequest.Create(cUrlLogin);
request.UserAgent = cUserAgent;
request.Referer = cUrlHalo;
但是 PCL 不允许这样做,当我尝试其他方式时,它只会抛出错误:
附加信息:必须使用适当的属性或方法修改“User-Agent”标头。
我尝试将WINDOWS_FORMS 或WPF 放入构建条件,并使用.UserAgent/.Referer 围绕设置它放置一个if 语句,但无济于事。有没有人遇到过这个问题并找到了解决方法?
【问题讨论】:
标签: c# httpwebrequest user-agent portable-class-library