首页 > 解决方案 > Restful Webservice 字符串响应

问题描述

我有一个端点,它应该发送一个字符串作为响应。我的问题是我需要使用响应实体来发送字符串响应还是只将字符串返回给消费者?

@GetMapping(value = "/word")
public String getWord() {
    String response = "webservice";
    return response;
}

第二种方法:

@GetMapping(value = "/word", produces ={MediaType.APPLICATION_JSON_VALUE})
public ResponseEntity<String> getWord() {
    String response = "webservice";
    return new ResponseEntity<>(response, HttpStatus.OK);
}

仅发送字符串或使用响应实体的正确方法是什么?

标签: javarestweb-services

解决方案


仅发送字符串或使用响应实体的正确方法是什么?

Spring MVC文档列出了许多可以从控制器方法返回的类型。

正如我之前在这里这里所回答的,ResponseEntity<T>代表了整个 HTTP 响应。除了body之外,它的 API 还允许您为响应设置标头状态代码。

只返回一个 bean 实例或字符串是可以的,但不会给您太大的灵活性:将来,如果您需要在响应中添加标头或修改状态码,例如,您需要更改方法返回类型.


推荐阅读