gpt4 book ai didi

javascript - JQuery 和 XHR——跨站点 JSON POST 与 CORS

转载 作者:搜寻专家 更新时间:2023-11-01 05:23:08 26 4
gpt4 key购买 nike

我正在制作一个小型 UI,以使用 jQuery 将 JSON 对象提交到外部 CastIron 服务器(并不是说服务器类型对这个问题很重要)。初始发送工作正常,但我没有收到服务器的响应。这是 jQuery 的样子:

$.ajax({
url: 'http://cirun2/Impact/CreateImpacts',
type: "POST",
data: JSON.stringify(myobj),
dataType: 'text',
async: false,
//beforeSend: function(xhr){
// xhr.setRequestHeader(
//},
complete: function(returned_data) {
$('#output').append("<p>Submitted successfully to CastIron. Returned data: " + returned_data + "</p>");
},
error: function(error_text) {
console.log("Update unsuccessful. Status: ", error_text);
}
});

我收到“已成功提交给 CastIron。返回数据:[object Object]'消息,但不显示正文,firebug提示有错误。

Firebug response

这是完整的错误:

"[Exception... "Failure" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: http://server.company.com/mr/js/jquery-1.11.0.min.js :: .send :: line 4" data: no]"

200 之后的部分是我期望作为响应的 JSON 对象。我不确定如何去做。 “Via”之后的部分是默认的 CastIron header ,显示每个过程花费的时间。我不确定这些是否以错误的顺序发布,或者问题出在哪里。

编辑(2014 年 5 月 7 日):我做了更多的探索,我想我遗漏了一条重要的信息。我正在尝试使用 CORS。这是我的标题。是否有可能 header 对于提交是正确的,但对于返回值是不正确的?

Response Headers
Access-Control-Allow-Head... X-Requested-With
Access-Control-Allow-Orig... *
Connection keep-alive
Content-Length 288
Content-Type application/json; charset=utf-8
Date Wed, 07 May 2014 14:34:51 GMT
X-Powered-By Express

Request Headers
Accept application/json, text/javascript, */*; q=0.01
Accept-Encoding gzip, deflate
Accept-Language en-US,en;q=0.5
Host myserver.mycompany.com:4000
Origin http://ironsides.zayo.com
User-Agent Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:28.0) Gecko/20100101 Firefox/28.0

最佳答案

它最终成为来自 CastIron 服务器的不正确 header 。我让 CI 管理员将返回码修​​复为“200 OK”,并让她添加以下 header :

Access-Control-Allow-Origin: *    
Access-Control-Allow-Headers: X-Requested-With

事实证明,她的回复并未发送这些 header 。阅读完 CORS 后和 Debugging CORS in Firebug ,我能够弄明白。

关于javascript - JQuery 和 XHR——跨站点 JSON POST 与 CORS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23432798/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com