javascript - 如何防止 jQuery $.ajax 在请求中的查询字符串中添加前导 & 符号?

标签 javascript jquery url

我试图避免在服务器上处理这个编码不正确的请求。我有一个带有单个参数的请求,如下所示:

$.ajax({
    url: "http://someplace.ontheinternets/count?",
    data: {
        days_since_epoch: 15460
    },
    dataType: "json",
    success: function(data) {
        // Do something with data
    }
});

这给了我:http://someplace.ontheinternets/count?&days_since_epoch=15460

领先的&符号在另一端给我带来了问题(解释为两个参数,第一个参数为空)。似乎很容易修复,但我没有在相关问题中看到这个具体问题。任何建议都会有帮助。

最佳答案

请勿将 ? 放在 url 参数中。既然你已经在那里了,jQuery 认为 URL 已经有其他参数,因此使用 & 添加你要求它添加的参数。如果您从 url 参数末尾删除 ?,jQuery 不会被愚弄,并且将(对于单个参数)仅使用 ?.

关于javascript - 如何防止 jQuery $.ajax 在请求中的查询字符串中添加前导 & 符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10419456/

相关文章:

javascript - 复制DIV内容到另一个DIV

javascript - 使用 jQuery 按数据属性进行选择 - 在 Chrome 中有效,在 Firefox 中无效。选择?

url - 在第一次而不是第二次点击后获取 JSF 2 url

javascript - 如何在 react 中更改 pdf 的高度或宽度(npm react-pdf)

javascript - 在本地网络上测试时使用 geolocation.getCurrentPosition

Javascript var 向下计数失败

javascript - Jquery/Javascript 在滚动后找到第一个可见元素

php - 以编程方式提交 WordPress 表单密码

ios - Moovit 集成导致崩溃

javascript - 为什么 window.showModalDialog 被弃用?用什么代替?