web-dev-qa-db-ja.com

iOS 8.0.0でHTTPを介したファイルのアップロードが失敗するGM Safari

UPDATE:
確認済み:これはiOS 8.0.2アップデートで修正されました。

PUT/POSTを使用してHTTP経由でファイルをアップロードすると、iOS 8のモバイルSafariでSend Request Headersがスタックするようです。GM build。

ここの例 があります:

  • デスクトップでHTTPモニターを開き、iOS 8デバイスをルーティングします
  • ログインする
  • ファイルを追加する
  • アップロードをヒット
  • 初期化(要求ヘッダーを送信)で停止します

これは http://m.facebook.com でも当てはまります
-写真をステータスに追加しようとすると失敗します。

このonlyは、リクエストにファイルが含まれている場合にのみ発生します。これは、ファイル入力でmultipleを有効/無効にすることに関係なく、再現可能です。アップロードは、Chrome iOS 8で正常に動作します。

他の人もこれを経験しましたか? iOS 8 SafariでHTTP経由でファイルを正常に送信する方法はありますか?

43
satJ

これはiOS 8.0.0のバグであり、8.0.2で修正されました。ファイル本文はリクエストペイロードには含まれませんが、Content-Lengthは、あたかもそのように設定されます。

ブログの投稿をご覧くださいiOS 8のSafariでファイルのアップロードが壊れているようです

22
Dmitry Mukhin

更新:Appleは昨日iOS 8.0.2をリリースし、アップロードのバグを修正しました。

IOS 8.0ではファイルのアップロードが壊れています。 Mobile Safariでアップロードされたすべてのファイルは、0サイズ[1]を返します。

うまくいけば、これは次のリリースでAppleによって修正されることを願っています。ただし、ホーム画面のWebアプリには影響がないようです。

ファイルのアップロードが壊れています!!すべてのファイルのアップロードが機能していないため、ファイルを選択したり写真を撮ったりしても、JavaScriptはデータを取得できません。また、HTMLまたはXMLHttpRequestアップロードを介したPOSTアップロードのサーバーも取得できません。この問題は、ホーム画面のウェブアプリには当てはまらないようです。

ソース: http://www.mobilexweb.com/blog/safari-ios8-iphone6-web-developers-designers

[1] http://blog.fineuploader.com/2014/09/10/ios8-presents-serious-issues-that-prevent-file-uploading/

10
owdco

WordPressでも同様の問題が発生しています。すべてのiOS8 GMアップロードは408(httpステータス、タイムアウト)につながります。奇妙なことに、iOS8b5はエラー500を引き起こしました。

https://core.trac.wordpress.org/ticket/29602#comment:17

6
stephdau

実際、ファイルのアップロードは、IOS 8(safari)では正常に機能します。画像がiPhoneのカメラからではなくスクリーンショットからのものである場合。たとえば、iPhoneでカメラから写真を撮り、ブラウザ経由でファイルをアップロードするには(入力タイプ=ファイル)、空のデータを送信します
src: "data :,"

一方、同じ画像をメールに送信してメールからダウンロードして再度アップロードすると機能するか、スクリーンショットの写真を撮ると次のように機能しますsrc: "data:image/jpeg; base64、/ 9j/4AAQSkZJRgABAQAASABIAAD/7QA4UGhvdG9zaG9wIDMuMAA4QklNBAQAAAAAAAA4QklNBCUAAAAAABDUHYzZjwCyBOmACZjs + EJ +/8AAEQgGYATIAwEiAAIRAQMRAf/EAB8AAAEFAQEBAQE#A ...

任意のアイデアやヒントは私たちに知ってください。 Angluar JSは、サーバー上のファイルのアップロードとNodeJSに使用されています。よろしく、Alan Mehio

0
Alan M