2015-03-31 11 views
8

Chcę tylko wiedzieć, jak wysłać obiekt JSON do metody createTrackInJSON(Track track), z adnotacją @Post przez klienta odpoczynku postmana. tutaj, jak przekazać obiekt JSON do metody CreateTrackInJSON (Track track), z adnotacją @Post?Jak wysłać prośbę o wpis do poniższej metody postu używając klienta odpoczynku dla listonosza

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 + "]"; 
} 

} 

Odpowiedz

37
  1. Otwarte Postman.
  2. Wprowadź adres URL w pasku adresu URL http://{server:port}/json/metallica/post.
  3. Kliknij przycisk Headers i wpisz Content-Type jako nagłówek i application/json w wartości.
  4. Wybierz opcję POST z listy rozwijanej obok pola tekstowego adresu URL.
  5. Wybierz opcję raw z przycisków dostępnych poniżej pola tekstowego Adres URL.
  6. Wybierz JSON z poniższego menu.
  7. W textarea dostępnego poniżej wysłać zapytanie obiektu:

    { 
    "title" : "test title", 
    "singer" : "some singer" 
    } 
    
  8. Hit Send.

  9. patrz screenshot poniżej: enter image description here

+0

jak wysłać jeśli mam wiele parametrów? – Raghu

0

miałem ten sam problem. Podałem moje dane jako klucz-> wartość w sekcji "Body", wybierając opcję "dane formularza" i działało dobrze.

0

JSON: -

Na żądanie POST przy użyciu json object może być skonfigurowany przez wybranie

Body -> raw -> application/json

POST JSON object using POSTMAN

Formularz Danych (W przypadku treści normalnych POST): - multipart/dane formularzy

Dla zwykłego żądania POST (przy użyciu multipart/form-data) może być skonfigurowany przez wybranie

Body -> form-data

POST multipart/form-data using POSTMAN

Powiązane problemy