サーバーはrequest.getInputStream()
を使用してリクエスト本文を取得します。FeignClientで文字列を投稿する方法
クライアントコード:
@FeignClient(name="composer-agent")
public interface ComposerClient {
@RequestMapping(value = "/agent/import_bp", method = RequestMethod.POST)
String importBlueprints(String payload);
}
しかし、私は例外を取得:
Caused by: feign.FeignException: status 500 reading ComposerClient#importBlueprints(String); content:
{"timestamp":"2017-10-19T06:15:47-0400","status":500,"error":"Internal Server Error","exception":"java.lang.IllegalArgumentException","message":"MIME type may not contain reserved characters"}
at feign.FeignException.errorStatus(FeignException.java:62)
at feign.codec.ErrorDecoder$Default.decode(ErrorDecoder.java:91)
at feign.SynchronousMethodHandler.executeAndDecode(SynchronousMethodHandler.java:138)
at feign.SynchronousMethodHandler.invoke(SynchronousMethodHandler.java:76)
at feign.hystrix.HystrixInvocationHandler$1.run(HystrixInvocationHandler.java:108)
at com.netflix.hystrix.HystrixCommand$2.call(HystrixCommand.java:301)
at com.netflix.hystrix.HystrixCommand$2.call(HystrixCommand.java:297)
at rx.internal.operators.OnSubscribeDefer.call(OnSubscribeDefer.java:46)
... 144 common frames omitted
また、私はconsumes = MediaType.APPLICATION_JSON_VALUE
または他の値を設定し、または@RequestBody
を追加しようとするが、私は同じ例外を取得します。
どうすればこの問題に対処できますか?ありがとう。
' "ステータス":500、 "エラー": "内部サーバーエラー"、 "例外": "java.lang.IllegalArgumentExceptionが"、 "メッセージ":" MIMEタイプは予約文字を含めることはできません"。あなたのmimetypeには不正な文字が含まれているようです。だから問題は:どのmimetypeを使用していますか(コードには表示されていません)? –