私のウェブサイトから、同じドメインにあるが異なるポートにあるバックエンド サービスへの jquery ajax 呼び出しによって、ビデオ アップロード プログレス バーを作成しようとしています。
https://mywebsite.com/upload呼び出しhttps://mywebsite.com:3000/api/video/upload
これが私のajaxスクリプトです:
$.ajax({
xhr: function()
{
var xhr = new window.XMLHttpRequest();
//Upload progress
xhr.upload.addEventListener("progress", function(evt){
if (evt.lengthComputable) {
var percentComplete = evt.loaded / evt.total;
//Do something with upload progress
}
}, false);
return xhr;
},
url: "https://mywebsite.com:3000/api/video/upload",
data: dataForm,
cache: false,
contentType: false,
processData: false,
crossDomain: true,
type: 'POST'
});
このajaxを呼び出すと、私のPOSTリクエストは常にOPTIONSになりました
OPTIONS https://mywebsite:3000/api/video/upload Invalid HTTP status code 404
xhr 関数を削除すると、ajax スクリプトは正常に動作します。動画を 1 つアップロードできましたが、進捗リスナーがありません。
私のバックエンドは node.js で構築されています。助けてくれてありがとう。