asp.net-mvc如何修改请求标头在 c# 中,ASP.NET

发布时间: 2017/3/25 3:54:58
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我正在进行一个 ASP.NET mVC 项目 & 我不得不改变 HttpHeaders。看到 foolowing 代码片段︰

WebRequest req= HttpWebRequest.Create("myURL");
HttpWebResponse response = (HttpWebResponse)request.GetResponse();

req.Headers.Add("User-Agent", "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.15) Gecko/2009101601 Firefox/3.0.15 (.NET CLR 3.5.30729)");
req.Headers.Add("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
req.Headers.Add("Accept-Language", "en-us,en;q=0.5");

这即给出了一个异常

此标头必须使用适当的 property.\r\nParameter 名称修改︰ 名称。

任何人树立解

解决方法 1:

除了什么 @Mehrdad Afshari 说,你 req 变量需要的区域性类型。 WebRequest (抽象父类) 不会有用户代理和接受属性。

HttpWebRequest req = WebRequest.Create( "http://..." ) as HttpWebRequest;

而且,我只是想要确保你真的试图更改标题您正在发送从 MVC 应用程序的请求,而不被发送回从 MVC 应用程序的响应。 你已经写了代码的方式是有点令人困惑,以及您正在设置标头后接收响应,不会工作,因为你特别提到 MVC。 如果它真的并不重要,无论你使用 WebForms 还是 MVC 的服务器上创建的 WebRequest,过程仍然是相同的。

如果您正在试图更改的你发回的响应格式,留下你的评论,让我知道。

官方微信
官方QQ群
31647020