Node.jsとmulterを使用してファイルをアップロードしています。私はメインのapp.jsファイルとupload.htmlを構成しました。FormDataを使用したfetch()
マイ形式:
<form id="uploadForm" action="/uploads" enctype="multipart/form-data" method="post">
<input id="upload-input" type="file" name="uploads" multiple>
<button class="upload-button" type="button">File</button>
</form>
とscript.jsがどの私は、フォームデータを処理しようとすると)(フェッチとそれを掲示していて:
uploadInput.addEventListener('change', function() {
let files = event.target.files;
if(files.length > 0) {
let formData = new FormData();
for(let i = 0; i < files.length; i++) {
let file = files[i];
formData.append('uploads', file);
}
fetch('uploads', {
method: 'POST',
body: formData
})
.then(res => res.json(), error => error.message);
}
});
ファイルがアップロードされ、すべてを除いて結構です2つのエラー。ブラウザのコンソールで まず表示されます。WebStorm IDEコンソールで
uploader:1 Uncaught (in promise) SyntaxError: Unexpected token s in JSON at position 0
そして第二:すべてが正常に動作している間
(node:51729) [DEP0013] DeprecationWarning: Calling an asynchronous function without callback is deprecated.
あなたは、それがエラーで投げている理由のアイデアを持っていますか?
このJSON解析エラーをどのように処理するか、どのように省略するのか考えていますか?不運なロギングの応答とエラーは、非推奨警告の問題を解決しませんでした。 – veritimus
JSONでない場合は、 'json()'を使うことはできません。それが成功のメッセージであれば、おそらく何もする必要はありません。 –
フォームデータファイルをアップロードして送信していますが、json()の代わりに何を提案しますか? :) – veritimus