Picasa Web Uploader APIを使用して、写真のギャラリーを自分の Web サイトにアップロードしようとしています。ボタンを実装し、Picasa でセットアップして認証を機能させることができましたが、Picasa からサイトが受信した POST を処理するとき、$_FILES
配列は常に空です。
Fiddler を使用して Picasa から投稿されたリクエストを調べたところ、Content-Disposition
各ファイル マルチパートの先頭にあるヘッダーが長すぎることがわかりました。Picasa から送信されたヘッダーには、私のファイルへのフル パスが含まれています。サーバーなので、最終的には 128 文字をはるかに超えます。
Content-Disposition: form-data; name="http://localhost:50216/1f6b3b29edc6f9d8898ede07c1b10e27/image/415603f72f75af1a.jpg?size=640"; filename="DSC_0055.JPG"
PHP は 128 文字までのヘッダーしか処理できないようで、ヘッダーが長すぎるとマルチパート セクション全体が破棄されるようです。(Fiddler でこのヘッダーの長さを短くしてリクエストを再投稿すると、私の Web サイトはそれを受け取り、$_FILE
正常に処理します)。
どうすればこれを回避できますか?
- PHP が長いヘッダーを処理し、$_FILE 配列でデータを受信できるように、構成設定をどこかに設定できますか?
- または、$_FILE 配列以外に、欠落しているマルチパート セクションに別の方法でアクセスできますか?