IIS 10仅在Response.Write中发送回文本

时间:2019-03-19 04:16:18

标签: asp.net windows-server-2016 iis-10

为支持旧版客户端,我们在Windows Server 2012 R2 IIS 8.5.9600.16384的ASP.Net应用程序中提供了代码,这些代码仅会发送回“ True”或“ False”(不带引号):

   public partial class Authenticate : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Request.Form["Login"] == "true")
            {
                var result = Membership.ValidateUser(Request.Form["Username"], Request.Form["Password"]);
                if (result)
                {
                    FormsAuthentication.SetAuthCookie(Request.Form["Username"], false);
                }
                Response.Write(result);
                Response.End();
            }
        }
    }

我们安装了带有IIS 10.0.14393.0的新Windows Server 2016,现在它正在发回包装在html标记中的值:

"<html><body><p>True</p></body></html>"

为什么?在我的开发箱或较旧的Win 2012 R2服务器上不执行此操作。我找不到有关此的任何信息-我们无法更改所有客户端,如何确保此网页在Win 2016 IIS 10.0.14393.0上仅返回“ True”或“ False”?

1 个答案:

答案 0 :(得分:0)

使其正常工作,将ContentType作为文本/纯文本添加到这样的标题中:

const