たとえば、RFC 7159のように、文字列などのプリミティブ型は、有効なjsonメッセージです。しかし、文字列は二重引用符で囲む必要があります。RestControllerがjson文字列を正しく扱えるようにする方法
ので、文字列:JSONで
テスト
は次のとおりです。
"テスト"
私は適切に引用されたPOST本体
を送信する場合次のコード
@RestController @RequestMapping("test") public class TestController{ @RequestMapping(method=RequestMethod.POST) public ResponseEntity<?> userLogout(@RequestBody final String input) { System.out.println(input); return new ResponseEntity<>("OK", HttpStatus.OK); } }
に "テスト"
入力変数の値が
"テスト"
代わりに
012であります正しい値であろう試験
。
また要求の出力は
OK
代わりに
正しい出力あろう"OK"
あります。
文字列を適切に処理するためにSpringを強制する方法はありますか?
要求が正しいヘッダ持っている:
コンテンツタイプ:アプリケーション/ JSONを。 charset = UTF-8
RequestMappingアノテーションにproduce = "application/json"を追加しても役に立ちませんでした。
(ただ、サイドノート:あなたは通信のために改造またはGsonを使用している場合は、それらが適切に文字列を処理します)
【春休止コントローラでJSONの戻り値として、単純な文字列(の可能性のある重複http://stackoverflow.com/questions/23581619/simple-string-as-json-return-value-in-spring- rest-controller) –
これは役に立ちますか? http://stackoverflow.com/questions/18385361/return-json-for-responseentitystringまた、消費メディアの種類を調整してみてください – Bernhard
@Bernhard no、それは役に立たず、その質問には解決策はありません – Groosa