【问题标题】:how to send data from servlet to rest api如何将数据从servlet发送到rest api
【发布时间】:2019-08-26 01:30:33
【问题描述】:

我想将数据从我的 servlet 发送到 rest api。 它是如何完成的:

protected void doPost(
      HttpServletRequest  request
    , HttpServletResponse response
) throws ServletException, IOException {

    String Id= "MyId";

    response.setContentType("application/json");
    response.getWriter().write(Id);
    getServletContext()
        .getRequestDispatcher("<PathofAPI>")
        .forward(request, response);
}

一旦发送数据,如何在我的 rest api 中检索它

【问题讨论】:

  • 只是想知道,从 Servlet 调用 HttpUrlConnection 是否有任何问题。如果您不想调用restTemplate,我可以理解。

标签: java rest servlets


【解决方案1】:

或者,您必须使用 getter 和 setter 为您的 Id 参数创建 POJO 类:

String createRequestUrl="YOUR_LINK WHERE_YOU GET answer FROM";
RestTemplate template=new RestTemplate();
your_POJO_object.setYour_Pojo_Object(Id);
ObjectMapper objectMapper = new ObjectMapper();
MultiValueMap<String, String> orderRequestHeaders=new 
LinkedMultiValueMap<String,String>();
orderRequestHeaders.add("Content-Type", "application/json");
orderRequestHeaders.add("Accept", "application/json");
String orderCreateRequest=objectMapper.writeValueAsString(YOUR POJO object.class);
HttpEntity<String> orderRequest=new HttpEntity<String>(orderCreateRequest, orderRequestHeaders);
String response=template.postForObject(createRequestUrl, orderRequest, String.class);

【讨论】:

    【解决方案2】:

    你想要实现的目标对我来说有点不清楚。

    通过在让“PathofServet”处理请求之前将“MyId”写入响应,您将破坏响应中的 json 格式。

    您是否有一个 servlet“PathofServlet”期望作为请求并作为响应发送的示例?您希望您的 servlet 响应什么?

    【讨论】:

      猜你喜欢
      • 2021-09-02
      • 2020-06-22
      • 1970-01-01
      • 2013-08-13
      • 2021-06-11
      • 1970-01-01
      • 1970-01-01
      • 2017-09-07
      • 2019-10-09
      相关资源
      最近更新 更多