Javascript AJAX请求,使用参数重定向
这是我的ajax请求,它以JSON的形式发送,并返回一个对象 ie.search={firstName:km,lastname:b} 但是,ajax没有将重定向中的参数的内容类型设置为JSON。它仍在作为对象发送。JSON stringify不起作用。在success/redirect函数中是否有方法将内容类型设置为JSON stringify只是将对象解码为Javascript AJAX请求,使用参数重定向,javascript,jquery,ajax,Javascript,Jquery,Ajax,这是我的ajax请求,它以JSON的形式发送,并返回一个对象 ie.search={firstName:km,lastname:b} 但是,ajax没有将重定向中的参数的内容类型设置为JSON。它仍在作为对象发送。JSON stringify不起作用。在success/redirect函数中是否有方法将内容类型设置为JSON stringify只是将对象解码为 $.ajax({ url: baseUrl, type: "post",
$.ajax({
url: baseUrl,
type: "post",
contentType: "application/json",
dataType: "json",
success: function (data) {
window.location = ('http://localhost:9000/#/home.html?' + (data.search))
},
data: JSON.stringify(body),
});
return false;
}
};
这可能是因为它试图将对象发送到window.location部分。 您可能需要的是:
%7B%22clientName%22:%blah%22,%22em%22:%22mLigDACsBihAL2RETse06351MuCNehZQ%22,%22partnercode%22:%blah%22%7D
您可以使用:
那么data.search包含一个JSON字符串?我不太清楚你的问题是什么。试着打印data.search包含的内容。body的值是什么?我举了一个例子,搜索的格式如下:{clientName:“google”,em:“mLigDACsBihAL2RETse06351MuCNehZQ”,partnercode:“google”}如果您想重定向到发送json数据的url,您最好在success函数中使用另一个
ajax
,内部ajax的success将用服务器的结果替换
,如果这是您想要的,返回的数据将不总是相同的,因此我不能这样设置每个参数
window.location = ('http://localhost:9000/#/home.html?firstName=' + data.search.firstName + "&lastname=" + data.search.lastname)
var qs = $.param(data.search);
window.location = 'http://localhost:9000/#/home.html?' + qs;