ホーム>source

サードパーティのRESTがあり、CURL(シェル)を使用してこのように正常に呼び出すことができます。このAPIはJSONを返します。コンテンツタイプを application/x-www-form-urlencoded に変更して、同じAPIを呼び出してみました  しかし、それは機能しません。私は content-type: multipart/form-data を使用せざるを得ないと思う

curl --request POST --url https://************************* --header 'Authorization: Bearer ********'  --header 'content-type: multipart/form-data; ' --form cluster_id=0717-035521-puny598 --form start_time=1534357800000 --form end_time=1534444199999 --form order=ASC --form limit=500

次に、InvokeHTTPプロセッサ(NiFi)を使用して同じAPIを呼び出します。そこで、次のように設定しました。しかし、私は電話を成功させることができません。 (これはプロキシの問題ではありません)。

以下は、私がPOSTボディを作成する方法です(FFによる)

「enter」を\ r \ nなどに置き換えるか、ボディを name1=val1&name2=val2&.... に変更してみました  など何も動作しませんでした。

これは私が得ている応答です。

[

CURL(シェル、Nifiを実行している同じサーバーから)を実行できます。また、私は郵便配達員を介してURLにアクセスすることができます。

[

あなたの答え
  • 解決した方法 # 1

    最後に、それは働いた。フローはややこのようなものです。

    GenerateFlowFile->UpdateAttribute->AttributesToJSON->InvokeHTTP

    変更するだけで、InvokeHTTPを作成しました。 content-typeを${mime.type}に戻しました。

  • 前へ java - JPAクエリ:サブクエリをグループ化条件に結合する
  • 次へ opencv - OpenCVSharpを使用してC#で境界ボックスを見つけますか?