postman packaged app を使用して投稿リクエストを送信しています。
次のコントローラーをリクエストしたい。
Postmanオブジェクト(値付き)と生の形式を使用したリストを使用してpost requestbodyを送信する方法は?
@RequestMapping(value = "register", method = RequestMethod.POST)
@ResponseBody
public ResponseMessage save(@RequestBody Freelancer freelancer, @RequestBody List<Integer> skills) {
私はこのように試しました:
{
"address": "colombo",
"username": "hesh",
"password": "123",
"registetedDate": "2015-4-3",
"firstname": "hesh",
"contactNo": "07762",
"accountNo": "16161",
"lastName": "jay"
}
{
"array[0]" :1436517454492,
"array[1]" :1436517476993
}
ヘッダーリクエストでcontent-type
としてapplication/json
を作成し、rawタブの下で本文から投稿することを確認します。
{
"address": "colombo",
"username": "hesh",
"password": "123",
"registetedDate": "2015-4-3",
"firstname": "hesh",
"contactNo": "07762",
"accountNo": "16161",
"lastName": "jay",
"arrayObjectName" : [{
"Id" : 1,
"Name": "ABC" },
{
"Id" : 2,
"Name" : "XYZ"
}],
"intArrayName" : [111,222,333],
"stringArrayName" : ["a","b","c"]
}
使用しているサーバー側のテクノロジーはわかりませんが、jsonアレイを使用してみてください。あなたが試すためのいくつかのオプション:
{
"address": "colombo",
"username": "hesh",
"password": "123",
"registetedDate": "2015-4-3",
"firstname": "hesh",
"contactNo": "07762",
"accountNo": "16161",
"lastName": "jay"
},
[
1436517454492,
1436517476993
]
それでもうまくいかない場合は、以下を試してください:
{
freelancer: {
"address": "colombo",
"username": "hesh",
"password": "123",
"registetedDate": "2015-4-3",
"firstname": "hesh",
"contactNo": "07762",
"accountNo": "16161",
"lastName": "jay"
},
skills : [
1436517454492,
1436517476993
]
}
私もほぼ同じ質問があります、それは参照する例です
私のコントローラー
@RequestMapping(value = {"/batchDeleteIndex"}, method = RequestMethod.POST)
@ResponseBody
public BaseResponse batchDeleteIndex(@RequestBody List<String> datasetQnames)
郵便屋さん
bodyのrawがapplication/jsonであることを確認してください
["aaa","bbb","ccc"]
要件に従ってこの形式を使用します:
{
"address": "colombo",
"username": "hesh",
"password": "123",
"registetedDate": "2015-4-3",
"firstname": "hesh",
"contactNo": "07762",
"accountNo": "16161",
"lastName": "jay"
"arrayOneName" : [
{
"Id" : 1,
"Employee" : "EmpOne",
"Deptartment" : "HR"
},
{
"Id" : 2,
"Employee" : "EmpTwo",
"Deptartment" : "IT"
},
{
"Id" : 3,
"Employee" : "EmpThree",
"Deptartment" : "Sales"
}
],
"arrayTwoName": [
{
"Product": "3",
"Price": "6790"
}
],
"arrayThreeName" : [
"name1", "name2", "name3", "name4" // For Strings
],
"arrayFourName" : [
1, 2, 3, 4 // For Numbers
]
}
これをPOST適切なエンドポイントで使用することを忘れないでください。また、RAWを選択し、ボディタブでJSON(application/json)を使用してください。
これと同様:
更新1:
複数の@RequestBodyが許可または可能だとは思わない。
@ RequestBodyパラメーターは、リクエストの本文全体を持ち、それを1つのオブジェクトのみにバインドする必要があります。
これを機能させるには、ラッパーオブジェクトのようなものを使用する必要があります。
これを試して、
{
"address": "colombo",
"username": "hesh",
"password": "123",
"registetedDate": "2015-4-3",
"firstname": "hesh",
"contactNo": "07762",
"accountNo": "16161",
"lastName": "jay",
"skill":[1436517454492,1436517476993]
}
//バックエンド。
@PostMapping("/")
public List<A> addList(@RequestBody A aObject){
//......ur code
}
class A{
int num;
String name;
List<B> bList;
//getters and setters and default constructor
}
class B{
int d;
//defalut Constructor & gettes&setters
}
//郵便配達員
{
"num":value,
"name":value,
"bList":[{
"key":"value",
"key":"value",.....
}]
}
リクエストURLが http:// localhost:XXXX/OperationName/V# であることを確認しながら、リクエストセクションで次の形式を使用する場合.
{
"address": "colombo",
"username": "hesh",
"password": "123",
"registetedDate": "2015-4-3",
"firstname": "hesh",
"contactNo": "07762",
"accountNo": "16161",
"lastName": "jay",
"listName":[
{
"elementOne":"valueOne"
},
{
"elementTwo":"valueTwo"
},
...]
}