【问题标题】:AJAX XMLHttpRequest cannot load <url> Invalid HTTP status code 404AJAX XMLHttpRequest 无法加载 <url> 无效的 HTTP 状态代码 404
【发布时间】:2015-07-28 01:52:33
【问题描述】:

更新/修复

感谢您的回答。找出问题所在! (以傻瓜编程方式)我正在连接到远程节点服务器 url /page。我可以访问此节点服务器,并且在一个名为 app.js 的文件中,它具有用于跨域选项访问的代码行。添加行即 app.options('url', 'param1', 'param2'); (抱歉不记得确切的代码)如果有人想详细说明他们的理解,那就太好了!



大家好,如果你能帮助我,那就太好了。

我的 AJAX 发布请求有问题,我的函数从用户那里获取一个值,并使用 apikey 和序列号以 json 格式发布/检索数据。我有另一个完全相同的功能,通过输入另一个 ID 号和 url: 可以成功运行。

通过手动输入API和序列号使用简单的表单请求成功检索数据,但下面的AJAX没有。

控制台日志错误返回 选项.... XMLHttpRequest 无法加载。 HTTP 状态码 404 无效

我在本地工作 > 请求远程 URL。我有 CORS 扩展,我尝试过允许跨源解决方案,但没有运气。

谢谢!

this.searchModelEvent = function (e) {
e.preventDefault();
var $m = $(this);
var _serial = $m.find(".serialNum").val();

var modelData = { apikey: apikey,id: _serial };
modelData = JSON.stringify(modelData);

console.log(modelData);

$.ajax({
    type: 'POST',
    contentType: 'application/json',
    dataType: 'json',
    url: modelUrl,
    crossDomain: true,
    data: 'modelData',
    success: function(data) {
    if (data.error) {
    _t.errorState();                    
    } else {
    console.log("SUCCESS!!@#! \n");
    }
},//End Success
}); //End Ajax Call

};//End Search Model Event

【问题讨论】:

  • 您确定modelUrl 与您手动测试中的完全相同吗?
  • 是的,对此进行了测试。与 http url 交换变量,反之亦然。欢呼
  • 我们无法调试我们看不到的东西,modelUrl 甚至来自哪里?我们无从得知。为什么你的变量 ModelData 在单引号中?这告诉 JS 解析器它是一个字符串而不是一个变量。
  • 我猜你的 url 不是你想象的那样。在网络面板中查看请求,查看url。

标签: jquery json ajax post


【解决方案1】:

不可能证明这是解决方案,因为它不是一套完整的代码,但是我想说你的主要问题(如果其他一切都在我在 OP 上提到的之外)是你需要:

换行

data: 'modelData',

到

data: modelData, 像这样:

this.searchModelEvent = function (e) {
e.preventDefault();
var $m = $(this);
var _serial = $m.find(".serialNum").val();

var modelData = { apikey: apikey,id: _serial };
modelData = JSON.stringify(modelData);

console.log(modelData);

$.ajax({
    type: 'POST',
    contentType: 'application/json',
    dataType: 'json',
    url: modelUrl,
    crossDomain: true,
    data: modelData,
    success: function(data) {
    if (data.error) {
    _t.errorState();                    
    } else {
    console.log("SUCCESS!!@#! \n");
    }
},//End Success
}); //End Ajax Call

};//End Search Model Event

【讨论】:

    猜你喜欢
    • 2015-04-15
    • 1970-01-01
    • 2016-04-10
    • 2015-11-02
    • 2016-03-27
    • 2017-04-13
    • 1970-01-01
    • 1970-01-01
    • 2015-08-16
    相关资源
    最近更新 更多