jquery ajax post请求不接受绝对url rails应用程序

Posted

技术标签:

【中文标题】jquery ajax post请求不接受绝对url rails应用程序【英文标题】:jquery ajax post request does not accept absolute url rails application 【发布时间】:2019-02-01 07:11:16 【问题描述】:

我正在运行一个 Rails 应用程序,并且我有一个 jquery ajax 发布请求

$.ajax(
        url: 'http:127.0.0.1:8000/api/ags/request/',
        method : 'POST',
        data: paramsData,
        dataType: 'json',
        success: function(data) ,
  )

当有人在我的请求中调用它时,我希望对 url 进行 post 调用,因为它是一个不同的应用程序,但所做的调用来自我当前的应用程序,它将外部 url 视为相对 url 所以这就是所谓的

http:localhost:3000/listings/http:127.0.0.1:8000/api/ags/request/

不知道为什么它将我的外部 url 视为相对 url。欢迎任何有任何解决方案的人。

【问题讨论】:

代码中是否有$.ajaxSetup() 来设置全局配置? 另外你确定不是url: '/http:127.0.0.1:8000/api/ags/request/', 吗?否则代码应该可以工作。我看不出有什么问题 它绝对不是代码中的 /http 并且我在代码中的任何地方都没有 ajaxSetup @ArupRakshit 【参考方案1】:

如果完全如您的问题所示: 'http:127.0.0.1:8000/api/ags/request/,那么这是无效的语法。 URL 的协议段需要以http:// 开头。即:

http://127.0.0.1:8000/api/ags/request

一旦部署到生产服务器,您最终将不希望这种硬编码。

【讨论】:

以上是关于jquery ajax post请求不接受绝对url rails应用程序的主要内容,如果未能解决你的问题,请参考以下文章

Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结

$.get()/$.post()/$.ajax()/$.getJSON()——Jquery

(转)Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结

详细解读Jquery各Ajax函数:$.get(),$.post(),$.ajax(),$.getJSON()

详细解读Jquery各Ajax函数:$.get(),$.post(),$.ajax(),$.getJSON()

Jquery各Ajax函数