Javascript 我如何发送JSON,但希望用AJAX/JQuery以纯文本作为响应?
在下面的脚本中,我将JSON格式的数据发布到服务器,但响应将以纯文本形式发送回来Javascript 我如何发送JSON,但希望用AJAX/JQuery以纯文本作为响应?,javascript,jquery,ajax,json,Javascript,Jquery,Ajax,Json,在下面的脚本中,我将JSON格式的数据发布到服务器,但响应将以纯文本形式发送回来 var regCredentials = { "username": creds.username, "password": creds.password, "fname": creds.fname, "lname": creds.lname }; request = $.ajax({ url: "int
var regCredentials = {
"username": creds.username,
"password": creds.password,
"fname": creds.fname,
"lname": creds.lname
};
request = $.ajax({
url: "internet.com/register",
type: "POST",
crossDomain: true,
data: regCredentials,
dataType: "json";
request.always(function (data) {
console.log("Response: " + data);
postResponse(data);
};
});
因为函数需要返回JSON,所以会在返回的数据中附加一个“
。它可能也会被解析,这不会因为某种原因引发错误
如何编写接受明文格式响应的JQuery AJAX帖子?
编辑:
我意识到我的困惑是,
数据
决定了传出和传入的预期格式,而不仅仅是传入。这没有多大意义,是吗?谢谢你的回答!数据类型参数用于设置预期的响应类型。在你的情况下,将其设置为文本
。这没有任何意义不影响以任何方式发送的信息。当您发送POST请求时,信息将放在请求的标题中。如果它是GET,则会序列化为字符串并附加到querystring中的URL
处理程序函数的语法也有点不正确。请尝试以下操作:
var regCredentials = {
"username": creds.username,
"password": creds.password,
"fname": creds.fname,
"lname": creds.lname
};
request = $.ajax({
url: "internet.com/register",
type: "POST",
crossDomain: true,
data: regCredentials,
dataType: "text",
success: function (data) {
console.log("Response: " + data);
postResponse(data);
}
});
如果要返回,请将数据类型更改为“文本”text@PatrickEvans但是我需要发送JSON。如果您在响应中得到附加的
“
,那么您需要检查服务器端代码。dataType
选项对发送的数据没有影响,只是告诉jQuery如何处理传入的响应。现在它有意义了。也谢谢你的语法提示。