29-08-22 02:50 AM
表記の件、
curl コマンドにて、
「1画像ファイルを指定、画像変換結果のファイルを受信」
上記処理を行うAPIを呼び出し、問題なく動作することを確認した上で、
同様の処理を、
Blue Prism 7.1 のWebAPI機能を利用して実装したいと考え、設定を行いました。
WebAPIのURL指定等は問題なくできており、サーバ接続はできているのですが、
サーバから、下記エラーが返却されます。
Internal : 予期しないエラー Web API HTTPリクエスト中のエラー
HTTPステータスコード:400
HTTPレスポンスコンテンツ:{"result":"FAILED","data":{"error_code":400004,"error_message":"Bad Request: no files uploaded"}}
WebAPI側の設定は、「単一ファイル」を指定、
呼び出すプロセス側では、送信ファイルのバイナリ情報を設定していますが、
ファイルのアップロードが的確にできていないように思われます。
解決方法を教えていただきたく、よろしくお願いいたします。
===================================================================================
補足:
気になる点として、APIの仕様書では、単一ファイルアップロードにも関わらず、
ヘッダー情報で、
Content-Type: multipart/form-data
を指定する旨記載されているため、その通り指定しております。
また、念のため、WebAPI側の設定は、「複数ファイル」指定に変更して、
引数に、ファイル情報の collection を指定して実施してみましたが、
サーバから返却されるエラーメッセージに変更はありませんでした。
===================================================================================
補足2:
WebAPI側の設で、「単一ファイル」「複数ファイル」指定変更がNGだったため、
リクエストの本文のコンテンツ で「テンプレート」を指定し、
下記情報を記載して実施してみましたが、
サーバから返却されるエラーメッセージに変更はありませんでした。
「file」は、画像ファイルを読み込んだバイナリ情報です。
[boundary]
Content-Disposition: form-data; name="file"; filename="sei.jpg"
Content-Type: application/octet-stream
[file]
[boundary]
02-09-22 07:57 AM
------------------------------
Takuma Hosokawa
Solutions Consulting
Blue Prism
------------------------------
02-09-22 11:51 AM
Blue Prism 細川様
ご回答、ありがとうございます。
現状バイナリファイルはサポートされていないとのこと、了解いたしました!
対応された際には、ぜひとも利用させていただきたく、よろしくお願いいたします。
追伸:
コードステージにて、「curl コマンドでAPI実行する .bat ファイル」を呼び出すようにし、
取得したJsonファイル情報を、Utility - JSON::JSON to Collection を利用して、
地道に解析することで対応いたしました。
20-09-22 03:13 AM
Shimizu様
お世話になっております。
Blue Prism 細川です。
お伝えしておりました、本件に関連する記事を公式Noteにアップいたしました。
#記事後半部分となります。
https://note.com/blueprism/n/n3b331762a3d0
ご確認いただけますと幸いです。
よろしくお願いいたします。
------------------------------
Takuma Hosokawa
Solutions Consulting
Blue Prism
------------------------------
29-09-22 01:58 PM
Blue Prism 細川様
コードステージの利用により、Blue Prism 上のみで(curlコマンドの利用等が不要で)、
バイナリデータのファイルがアップロードができる、との情報共有をいただき、ありがとうございます。
実際に書いてみたところ、無事バイナリデータのファイルアップロードについて
サーバ側がリクエストを正常受信してくれ、サーバからの正常なレスポンスが受信できることを確認いたしました。
実は、ファイルアップロードと共に、Blue PrismのWebAPI機能を利用したいと考えた理由はもう一つあり、
WebAPI機能の場合、レスポンス情報がJson形式であった場合、
$.data.・・・
といった形で、Jsonの中の一部の情報を切り出して格納するのが容易そうに思えた点にあります。
こちらは、コードステージ利用でレスポンス情報を取得した場合、一旦テキストデータとして受け取り、
Json形式のコレクションデータに変換格納した後、
必要なデータは順番を追って(親→子)で値を確認していく必要があるという点は
既存から変わりがないでしょうか。
もし、簡単にJson情報の一部を直接取り出せるような方法がございましたら
教えていただけるとありがたいです。
以上、よろしくお願いいたします。
30-09-22 01:59 PM