こんにちは、私はこのコードを持っています:
function test()
{
req = new XMLHttpRequest();
req.upload.addEventListener("progress", updateProgress, false);
req.addEventListener("readystatechange", updateProgress, false);
req.addEventListener("error", uploadFailed, false);
req.addEventListener("abort", uploadCanceled, false);
var data = generateRandomData(currentPayloadId);
totalSize = data.length;
req.open("POST", "www.mydomain.com/upload.aspx");
start = (new Date()).getTime();
req.send(data);
}
function updateProgress(evt)
{
if (evt.lengthComputable) {
total = totalSize = evt.total;
loaded = evt.loaded;
}
else {
total = loaded = totalSize;
}
}
また、私のサーバーは、upload.aspx の最初の OPTIONS 要求に 200 と Access-Control-Allow-Origin: * で応答し、2 番目の要求 POST が発生します。
すべてが整っているようで、FireFox では問題なく動作していますが、G Chrome では updateProgress ハンドラが呼び出されず、1 回だけ呼び出され、その後 lengthComputable が false になります。
Access-Control-Allow-Origin が必要でした: * これはドメイン間の呼び出しであるため、スクリプトの親は、upload.aspx ドメインとは別のサーバー上のリソースです。
誰でも手がかり、ヒント、助けてください。これは G Chrome の既知の問題ですか?
ありがとうございました!オバ