Javascript AJAX请求,使用参数重定向

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请求,它以JSON的形式发送,并返回一个对象

ie.search={firstName:km,lastname:b}

但是,ajax没有将重定向中的参数的内容类型设置为JSON。它仍在作为对象发送。JSON stringify不起作用。在success/redirect函数中是否有方法将内容类型设置为JSON

stringify只是将对象解码为

 $.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;