繁体   English   中英

使用带有主体和URL参数的JQuery的AJAX POST请求

[英]AJAX POST request using JQuery with body and URL parameters

我正在学习如何使用JQuery进行AJAX调用,我想知道是否有可能做的一件事是在帖子正文中包含一些URL参数数据和其他数据。 例如,我想做这样的事情:

$.ajax({
  url: '/myURL',
  type: 'POST',
  data: JSON.stringify(data),
  contentType: 'application/json; charset=utf-8'
})

但是除了要在POST请求正文中发送的JSON数据外,我还要添加URL参数。 有没有办法做到这一点?

您可以将变量包含在代码的url部分中。 例如

var example1 = "some_information";

$.ajax({
  url: '/myURL',
  type: 'POST',
  data: JSON.stringify(data),
  contentType: 'application/json; charset=utf-8'
})

会成为

var example1 = "some_information";

$.ajax({
  url: '/myURL?var1=example1',
  type: 'POST',
  data: JSON.stringify(data),
  contentType: 'application/json; charset=utf-8'
})

您可能需要在example1变量两边加上引号,以确保当URL中有空格时它不会中断。

您可以像使用get请求一样,在URL中正常发送参数,或者使用? &

$.ajax({
  url: '/myURL?data2=' + data2 + '&data3=' + data3,
  type: 'POST',
  data: JSON.stringify(data),
  contentType: 'application/json; charset=utf-8'
})

或通过在/之间设置它们

$.ajax({
 url: '/myURL/' + data2 + '/' + data3,
 type: 'POST',
 data: JSON.stringify(data),
 contentType: 'application/json; charset=utf-8'
})

在URL上包含参数的方式将取决于您在服务器端接收/解析参数的方式,但是对于发布请求,这不被认为是一种好习惯。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM