0

画像をアップロードするたびに、コンソールにエラーが表示されます。Base64としてロードしています。画像は正常にアップロードされ、プレビューは表示されますが、エラーが表示されます。

エラーは非同期に表示されるようですが、この関数の file.ReadAsDataURL メソッドで発生していると思います。

export function getBase64FromFile(target) {
    return new Promise((resolve, reject) => {
        let fileReader = new FileReader();

        fileReader.onloadend = fileLoadedEvent => {
            const base64 = fileLoadedEvent.target.result;
            resolve(base64);
        };

        fileReader.onerror = () => {
            reject(fileReader.error);
            console.log('filereader onerror', fileReader.onerror);
            fileReader.abort();
        };

        if (target) {
            fileReader.readAsDataURL(target);
        }
    });
}

内部的には何とか解決しているように見えますが、エラーは私を悩ませています。たとえば、私のパスC:/images/autumn.jpg では、エラーが次のようになっていることに気付きました。

GET c:%C3%BAkepathutumn.jpg net::ERR_UNKNOWN_URL_SCHEME

ブラウザがセキュリティのためにルートを に変更しているのがわかりますC:/Fakepath/autumn.jpgが、では Fakepath と autumn の間のスラッシュはどこですか?

エラーは chrome でのみ表示され、Firefox ではエラーは表示されません。

また、ターゲットに「File:///」などのプレフィックスを追加しようとしましたが、機能しません。

どんな助けでも感謝します。ありがとう!

4

0 に答える 0