0

DOM から画像を取得し、それを ajax 経由でアップロードするにはどうすればよいですか?

my_img_ele = document.getElementById("my_img");

これはajax呼び出しです

    var xmlHttp=new XMLHttpRequest();
    xmlHttp.open("POST", "site", true);
    var formData = new FormData();  
    formData.append(IMG_HERE); 
    xmlHttp.send(formData);

私がやっていることは、URLを送信してから画像サーバー側を検索することです. しかし、これはもっと速いと思います。

編集: ユーザーがフォーム経由で画像をアップロードしていないことに注意してください。img要素です。

4

2 に答える 2

1

あなたの姿は明らかに間違っています。画像要素は、画像の URL を含む DOM ノードに他なりません。画像自体はブラウザーによってダウンロードされるため、クライアント マシンではブラウザー メモリでのみ使用できます。また、何らかの方法でブラウザのメモリ (キャッシュ) にアクセスできる場合でも、クライアントの接続に基づいて、そこからのアップロードは、元のソースからサーバー側でダウンロードするよりもはるかに遅い可能性が高いと考えてください。もう 1 つの解決策は、URL (img.src) に基づいて ajax 経由で画像をダウンロードすることです。最初のコールバックで別の ajax を使用して迂回するだけですが、これはもちろん、画像が平均 2 倍以上移動することを意味します。

于 2013-06-21T17:44:32.397 に答える