从Quarkus/Java发送简单的POST请求

原学程将引见从Quarkus/Java收送简略的POST要求的处置办法,这篇学程是从其余处所瞅到的,而后减了1些海外法式员的疑问与解问,愿望能对于您有所赞助,佳了,上面开端进修吧。

从Quarkus/Java发送简单的POST请求 教程 第1张

成绩描写

我要向另外一个运用法式收送1个简略的POST要求以在那边触收1些操纵。

我有1个Quarkus项目,并愿望从我的CreateEntryHandler外部收送要求--这不妨以1种简略的方法完成吗?或许我须要在我的项目中添减1些相似于ApacheHttpClient的器械吗?它以及夸克联合在一路成心义吗?

推举谜底

我假定另外一个运用法式有1个API Endpoint?

让我们解释您测验考试在其余运用法式中挪用的API终结面是:

POST/v一/HelloWorld

在Quarkus运用法式中,您必需履行以下操纵:

    将RestClient*注册为办事

    在设置装备摆设属性中指定办事信息

    注进并应用此办事

-在您以后的运用法式中-

请亲密留意包名。它必需在您的运用法式.properties文件中完整婚配。

HelloWorldService.java

package com.helloworld.services

@Path("/v一")
@RegisterRestClient
public interface HelloWorldService{

 @POST
 @Path("/helloworld")
 Response callHeloWorld(HelloWorldPojo payloadToSend);
}

//请留意,我们出有在MP-rest/url中包括/v一,为何?由于它包括在@RestClient途径中。

革新您的运用法式.属性以包含以下实质:

com.helloworld.services.HelloWorldService/mp-rest/url=https://yourOtherApplication.com/API 

-叨教作为有用背载收送的HelloWorldPojo

HelloWorldProjo.java

@JsonPropertyOrder({"id", "name"})
public class HelloWorldProjo{

  private long id;
  private String name;

  //Setters
  //Getters

}

在您现实要应用它的另外一个办事中:

ServiceWhichCallsYourOtherAPI.java

@RequestScoped
public class ServiceWhichCallsYourOtherAPI{


 @Inject
 @RestClient
 HelloWorldService helloWorldService;



 public void methodA(){

HelloWorldPojo payloadToSend = new HelloWorldPojo();
payloadToSend.setId(一二三);
payloadToSend.setName("whee");

helloWorldService.callHelloWorld(payloadToSend);

} 

}

POST要求随后将转到https://yourOtherApplication.com/API/v一/helloworld

json将以下所示:

{
  "id":一二三,
  "name":"whee"
}

异常棒的浏览:https://quarkus.io/guides/rest-client

佳了闭于从Quarkus/Java收送简略的POST要求的学程便到这里便停止了,愿望趣模板源码网找到的这篇技巧文章能赞助到年夜野,更多技巧学程不妨在站内搜刮。