JSONオブジェクトをcreateTrackInJSON(Track track)
メソッドに送信する方法、@Post
ポストマンレストクライアントによる注釈。ここで、@ Postアノテーションを使用してJSONオブジェクトをcreateTrackInJSON(Track track)メソッドに渡す方法は?
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
import com.mkyong.Track;
@Path("/json/metallica")
public class JSONService {
@GET
@Path("/get")
@Produces(MediaType.APPLICATION_JSON)
public Track getTrackInJSON() {
Track track = new Track();
track.setTitle("Enter Sandman");
track.setSinger("Metallica");
System.out.println("inside get method . . .");
return track;
}
@POST
@Path("/post")
@Consumes(MediaType.APPLICATION_JSON)
public Response createTrackInJSON(Track track) {
System.out.println("inside post method . .");
String result = "Track saved : " + track;
return Response.status(201).entity(result).build();
}
}
//Track class is:
public class Track {
String title;
String singer;
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getSinger() {
return singer;
}
public void setSinger(String singer) {
this.singer = singer;
}
@Override
public String toString() {
return "Track [title=" + title + ", singer=" + singer + "]";
}
}
Postman
を開きます。http://{server:port}/json/metallica/post
。Headers
ボタンをクリックして、Content-Type
ヘッダーおよびapplication/json
の値。POST
を選択します。raw
を選択します。JSON
を選択します。以下の利用可能なテキストエリアで、リクエストオブジェクトを投稿してください:
{
"title" : "test title",
"singer" : "some singer"
}
Send
を押します。
以下のスクリーンショットを参照してください。
Postmanのインターフェイスは、更新に応じて変化しています。
だからあなたは郵便屋についての完全な情報を得ることができますここで入手できます。
私は同じ問題を抱えていた。 「フォームデータ」オプションを選択して、「ボディ」セクションでキー->値としてデータを渡し、正常に機能しました。