javascript - AJAX Post 缺少变量

标签 javascript ajax

我正在使用 ajax 调用,如下所示:

o.open("POST",q,true);
o.setRequestHeader("Content-type","application/x-www-form-urlencoded");
o.setRequestHeader("Content-length",p.length);
o.setRequestHeader("Connection","close");

其中 q = url 和查询字符串。 p = 仅查询字符串。

我的查询采用以下形式:"/apps/nettrax/f/events_detail.php?get=1&ids="+添加多个值,如下所示:123~34567~567~678~etc

如果有几个值,但大值字符串失败,则这一切都有效 - 变量 ids 未通过(尽管 get 已通过)... * 我没有使用jquery。

最佳答案

您正在发送 POST 请求,但通过 URL 指定 GET 中的参数。 URL 的大小有限制,因此这不起作用。您应该在 send() 调用中传递参数,以便将它们指定为 POST 数据:

var parameters = "ids=" + encodeURIComponent(ids);
o.open("POST","events_detail.php",true);
o.setRequestHeader("Content-type","application/x-www-form-urlencoded");
o.setRequestHeader("Content-length",p.length);
o.setRequestHeader("Connection","close");
o.send(parameters);

关于javascript - AJAX Post 缺少变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8048326/

相关文章:

javascript - 使用 JavaScript 选择和操作 CSS 伪元素,例如::before 和::after

javascript - 如果字符串长度超过 12,如何放置...

javascript - 带有 underscore.js 的 if 语句

javascript - 使用 JavaScript 检查元素是否在包含在对象内的数组内

javascript - 带后台 AJAX 更新的 D3 图表 : cannot redraw graph

javascript - 添加验证码形成php/mysql

javascript - 未捕获的类型错误 : object is not a function?

javascript - 使用 Node.js 和 AJAX 请求将 Javascript 函数移至后端

javascript - Ajax 调用 API 返回错误 HTTP/1.1 405 Method Not Allowed

javascript - 检查服务器的可达性