Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net IIS7覆盖定义的HTTP头值_Asp.net_Iis 7_Http Headers_Content Type - Fatal编程技术网

Asp.net IIS7覆盖定义的HTTP头值

Asp.net IIS7覆盖定义的HTTP头值,asp.net,iis-7,http-headers,content-type,Asp.net,Iis 7,Http Headers,Content Type,我正在尝试将asp.net.ashx文件的内容类型设置为text/plain 当我通过ASP.NET开发服务器运行此操作时,内容类型已正确设置。但是,当我通过IIS7提供它时,内容类型(以及我设置的任何其他标题值)不会通过(它通过text/html)传递) IIS管理器的HTTP响应头部分中设置的唯一值是X-Powered-By属性。我尝试在这里设置内容类型,但没有成功。但是如果我删除了X-Powered-By属性,它就会从标题中删除 有什么想法吗 ashx文件中的代码 public class

我正在尝试将asp.net
.ashx
文件的内容类型设置为
text/plain

当我通过ASP.NET开发服务器运行此操作时,内容类型已正确设置。但是,当我通过IIS7提供它时,内容类型(以及我设置的任何其他标题值)不会通过(它通过
text/html
)传递)

IIS管理器的HTTP响应头部分中设置的唯一值是
X-Powered-By
属性。我尝试在这里设置内容类型,但没有成功。但是如果我删除了
X-Powered-By
属性,它就会从标题中删除

有什么想法吗

ashx文件中的代码

public class Queries1 : IHttpHandler, System.Web.SessionState.IReadOnlySessionState
{
    public void ProcessRequest(HttpContext context)
    {
        context.Response.ContentType = "text/plain";
        context.Response.Write("hello");
    }

    public bool IsReusable
    {
        get { return false; }
    }
}
来自IIS7的HTTP头(通过python脚本拉取):

[('content-length','58'), ('x-powered-by'、'ASP.NET'), (“服务器”、“Microsoft IIS/7.0”), (“日期”,“星期四,2010年10月21日15:51:28 GMT”), ('content-type','text/html'), ('www-authenticate'、'协商,NTLM')]
要添加HTTP标头,您需要使用:

context.Response.Headers.Add("MyHeader", "Hello World!");
根据Coding Gorilla的说明,你确定你浏览到了正确的url吗?如果我尝试与您编写的代码完全相同的代码,我会在Fiddler中看到以下内容:

HTTP/1.1 200 OK Cache-Control: private Content-Type: text/plain; charset=utf-8 Vary: Accept-Encoding Server: Microsoft-IIS/7.5 X-AspNet-Version: 2.0.50727 X-Powered-By: ASP.NET Date: Thu, 21 Oct 2010 20:11:44 GMT Content-Length: 5 hello HTTP/1.1200ok 缓存控制:专用 内容类型:文本/纯文本;字符集=utf-8 改变:接受编码 服务器:Microsoft IIS/7.5 X-AspNet-Version:2.0.50727 X-Powered-By:ASP.NET 日期:2010年10月21日星期四20:11:44 GMT 内容长度:5 你好
我不认为他的例子是关于设置标题的,尽管他确实提到了这一点,但我认为他的cheif抱怨是他正在更改内容类型,并且没有任何效果。你是对的。我有写url,但没有连接到需要验证的站点,因此简单的GET不会返回我认为是的页面。我的错误。谢谢你的帮助。@Trent-啊,对了。这是我接下来要问的问题,如果你正在验证,当看到
'www-authenticate',Negotiate,NTLM
,它至少给出了正确的回答吗?例如,如果您更改
上下文.response.write(“boo!”)
它是否会发出“boo!”? HTTP/1.1 200 OK Cache-Control: private Content-Type: text/plain; charset=utf-8 Vary: Accept-Encoding Server: Microsoft-IIS/7.5 X-AspNet-Version: 2.0.50727 X-Powered-By: ASP.NET Date: Thu, 21 Oct 2010 20:11:44 GMT Content-Length: 5 hello