Webhooks verstehen - Beispiel?

Habe hier nochmal eine Frage dazu:
Bspw. meine URL ist: www.mydomain.com/webhhook/ordercreated

Wenn ich das richtig verstehe, definiere ich die URL des Endpoints hier:

Code:
@Path("webhooks")
interface WebHooks {
   @POST
   public Response event(Event event);
}
Die Frage für mich ist nun die Übermittlung der Information.
Wie übermittle ich vom Sender zum Empfänger mein Objekt?
Wie muss das programmiertechnisch aussehen?
 
Du serialisierst Dein Event und schickst es über die Leitung an die Ziel-URL.

Ein Beispiel mit JSON-P dürfte grob wie folgt aussehen (ungetestet, kann Fehler enthalten):
Java:
public class Event {
    final String orderId;
    final String customerId;
    public Event(String orderId, String customerId) {
        this.orderId = orderId;
        this.customerId = customerId;
    } 
}
Serverseite:
Java:
@Path("webhooks")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public class Webhooks {
    @Path("ordercreated")
    @POST
    public Response orderCreated(JsonObject json) {
        Event event = new Event(json.getString("order-id"), json.getString("customer-id"));
        // mach etwas mit dem event
        return Response.ok();
    }
}
Clientseite:
Java:
JsonObject event = Json.createJsonObjectBuilder()
        .add("order-id", orderId)
        .add("customer-id", customerId)
        .build();
    
Client client = ClientBuilder.client();
WebTarget target = client.target("http://www.mydomain.com/webhhook/ordercreated");
Response response = target.request().post(Entity.json(event.toString()));
// behandle response
 
Passende Stellenanzeigen aus deiner Region:

Neue Themen

Oben