0
私は現在、非常にうまく文書化されていないREST APIに接続しようとしています。 Http POSTリクエストを使用して特定のURLにPDFをアップロードする必要があります。バイナリコード化されたPDFとは何ですか?
APIドキュメントは言う:バイナリエンコードされたPDFと、この要求に
POST。
これはうまくいかず、 "binary encoded pdf"とはどういう意味ですか?私が何をしたか
されました:
$pdf = base64_encode(file_get_contents("test.pdf"));
$result = $restClient->post('/api/upload/', $pdf);
結果:
400 - 不正な要求
注:RESTクライアントは他のすべての要求のために動作します。私はちょうど "バイナリコード化された"が何を意味するのか分からないようです。 「 - BASE64でないエンコードを行い、そのまま」
HTTPヘッダーの「Content-type」はまた、正しく「アプリケーション/ PDF」
おそらく、彼らはtrinary PDFを送信する人々に問題があったでしょうか?これがドキュメントのサンプルであれば、APIの開発者は数回の手掛かりで叩かれる必要があると言えます。 –
@Marc:いいえ、単なるPDFが送られている可能性があります。今それは役に立たない! – icktoofay
multipart/POSTが 'Content-Transfer-Encoding:binary'を使用しているかどうか確認してください。また、base64も明らかにuneededです。コンテンツタイプとして 'application/octet-stream'を試してください。これは、人々が"バイナリ "と言ったときに何を意味するのかということが多いからです。 – mario