0
我在C#中编写了一个HttpHandler来做一些腌制和散列操作,并将一个id发回到我的网页。网页将用户的姓名和姓氏发送给处理程序,处理程序将其散列并散列,然后将散列发送回网页。为什么我的内容正文通过编码?
function redirectToCustom(){
var firstName = "First";
var lastName = "Last";
var xmlHttp = new XMLHttpRequest();
xmlHttp.onreadystatechange = function() {
if (xmlHttp.readyState == 4) {
var surveyURL = "https://www.google.com";
var uri = surveyURL + "?id=" + encodeURIComponent(xmlHttp.responseText);
window.location = uri;
}
};
xmlHttp.open("GET", "http://myhandler/GetHash.ashx?fname=" + encodeURIComponent(firstName) + "&lname=" + encodeURIComponent(lastName), true);
xmlHttp.send(null);
}
该处理程序的代码,GetHash.ashx低于,
string fName = context.Request.QueryString["fname"];
string lName = context.Request.QueryString["lname"];
string fullName = string.Concat(fName, lName);
string saltAndHash = PasswordHash.CreateHash(fullName);
SaveToTable(saltAndHash);
context.Response.ContentType = "text/plain";
context.Response.Write(saltAndHash.Split(':')[2]);
问题是,当我调试的网页,没有任何响应文本。
我看着Fiddler,它有一个响应体,但它是编码的,我无法弄清楚为什么身体编码,以及它是如何编码的。
为什么我的响应正文通过编码?
你是什么意思的“编码”?你能否提供你在Fiddler中看到的输出样本(包括标题,如果它们是可读的)? –
请求的标头非常重要,因为服务器可能会发送经过压缩的内容。 – bri
啊,你知道它可能会被压缩。在发布截图之前,告诉我这个标题是否意味着它正在被压缩? '内容编码:gzip' 这是在响应 – Adam