1

私たちは、AWS S3 SDKを使用して、ブラウザからS3バケットにファイルをアップロードしています。ファイルの量とサイズが膨大になり、UIのレンダリングと相互作用に影響を及ぼすため、アップロードプロセスをWebワーカースレッドにすることにしました。この方法で、ユーザーは単一のページアプリケーションで自由にナビゲートして対話できます。AWS S3 SDKのアップロードで使用されるWebワーカーでDOMParserをポリフィリングする方法は?

小さなファイルをアップロードすると、すべてうまく動作します。問題は、S3 SDKが大きなファイルをアップロードしようとしたときです。ファイルを複数のチャンクに分割し、各チャンクを個別にアップロードします。 s3サーバーはXML応答を返し、S3 SDKはWeb Workerスコープで定義されていないDOMParserクラスを使用してS3 SDKを解析しようとします。

S3 SKDにWebワーカーでアップロードを実行させるために、DOMParserをポリフィルする方法はありますか?

答えて

0

質問に私に答える:

私はjsdombrowserify

jsdomを使用して、WebワーカーにはDOMParserをポリフィルすることができましたが、窓的環境をシミュレートし、そしてbrowserifyバンドルは、ブラウザ上で実行されるjsdom(jsdomをすることを意図していましたnodejsで実行)

それはかなりうまくいった。

0

バージョン管理上の問題のため、jsdomは私のために働いていませんでした。しかし、次のコードを使用してaws sdkのDOMParserをポリファイル化することができました。

var DOMParser = require('xmldom').DOMParser; 
window.DOMParser = DOMParser; 

はbrowserify蘭と

importScripts('domparser.js'); 
importScripts('https://sdk.amazonaws.com/js/aws-sdk-2.176.0.js'); 
SDKインポートAWS前

browserify main.js -o domparser.js 

その後輸入domparser.js domparser.js作成します

関連する問題