マルチパート エンコードされたフォーム データを使用する API に POST メソッドがあります。mashape Web インターフェイスが次のカールを生成するように、正しいヘッダーとデータ設定をセットアップしました。
curl -X POST --include 'https://sslavov-text-analytics-v1.p.mashape.com/news' \
-H 'Authorization: Basic ***********' \
-H 'X-Mashape-Key: ************' \
-H 'Content-Type: multipart/form-data' \
-F 'file=@sample.docx' \
-F 'meta={"documentType": "application/vnd.openxmlformats-officedocument.wordprocessingml.document"};type=application/json'
基本的に、処理するテキストの単純な段落を含むファイルをアップロードしようとしています。興味深いのは、bash スクリプトでこの正確な curl を実行すると、すべてがスムーズに機能するのに、mashape で実行しようとすると、400 Bad Request
または500 Internal Server Error
私の特定のケースでは、正しいフォームまたはヘッダーを渡さないと、これらのエラーが生成されます。だから私の質問は次のとおりです。カール構文にエラーがありますか、それともサーバー側でエラーを探し続ける必要がありますか?
編集:問題が何であるかを理解しました。-F 'file=@sample.docx'
が以前に渡され-F 'meta....'
、それが原因でした。500 Internal Server Error
それで、質問は次のとおりです。フォームフィールドの順序を具体的に並べ替える方法はありますか (mashape はそれらを無意味に並べ替えるため)。