Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript XMLHttpRequest会传递,但不会传递调用相同内容的Jquery Ajax调用_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript XMLHttpRequest会传递,但不会传递调用相同内容的Jquery Ajax调用

Javascript XMLHttpRequest会传递,但不会传递调用相同内容的Jquery Ajax调用,javascript,jquery,ajax,Javascript,Jquery,Ajax,我不明白为什么第一个呼叫通过了,第二个呼叫我得到了400错误 //成功通过200次 var data=new FormData(); data.append('file',document.querySelector('#文件框前面')).files[0]); 数据。附加(“目的”、“身份证明文件”); var oReq=新的XMLHttpRequest(); oReq.open(“POST”https://uploads.stripe.com/v1/files",对),; oReq.setR

我不明白为什么第一个呼叫通过了,第二个呼叫我得到了400错误

//成功通过200次
var data=new FormData();
data.append('file',document.querySelector('#文件框前面')).files[0]);
数据。附加(“目的”、“身份证明文件”);
var oReq=新的XMLHttpRequest();
oReq.open(“POST”https://uploads.stripe.com/v1/files",对),;
oReq.setRequestHeader('Authorization'、'Bearer'+scope.apiKey);
oReq.onload=功能(oEvent){
如果(oReq.status==200){
document.querySelector(“#label results”).textContent='Success!';
}否则{
document.querySelector(“#label results”).textContent=“Failure:”+oReq.status;
}
document.querySelector(“#上传结果”).textContent=oReq.response;
}
发送(数据);
//下面的jquery调用失败,错误为400
变量选项={
网址:'https://uploads.stripe.com/v1/files',
类型:“post”,
标题:{
“授权”:“持有人”+scope.apiKey
},
processData:false,
数据:数据
};
$.ajax(选项)
.完成(功能(响应){
var i=0;
})
.always(函数(){
})
.fail(函数(jqXHR,textStatus){
yb.base.eventAlert(“提交图像时出错。请联系帮助台。”,“错误”);

});您的jQuery调用缺少contentType选项

var options = {
  url: 'https://uploads.stripe.com/v1/files',
  type: "post",
  headers: {
    "Authorization": "Bearer " + scope.apiKey
  },
  processData: false,
  contentType: false, // prevents jQuery from setting the default content type
  data: data
};

在jQuery示例中,您将附加到XHR示例的
data
变量,而不是为jQuery示例设置的
formData
变量。然后发送第一个示例数据。您的目的是什么?发送表单数据,就像第一个示例一样。我发现第二个例子中有一个小的拼写错误,我已经改正了。