【发布时间】:2019-07-08 02:11:35
【问题描述】:
有一个 Spring Rest 控制器:
@RestController
@RequestMapping("secanalytique")
public class SectionAnalytiqueController {
@GetMapping(value = "/sectionbyaxepro/{codecomp}", produces = "application/json")
public JSONObject getByAxePro(@PathVariable String codecomp) {
JSONObject jsonModel = new JSONObject();
jsonModel.put("cce0","frityyy");
return jsonModel;
}
}
我用 Postman 做了一个测试:http://172.20.40.4:8080/Oxalys_WS/secanalytique/sectionbyaxepro/8;而我得到的总是
{
"empty": false
}
那么有什么问题呢?
【问题讨论】:
-
可以为 JSONObject 添加哪个库吗?是 org.json.simple.JSONObject 吗?
-
它来自
org.json.JSONObject;,依赖是:<dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <version>20180813</version> </dependency> -
我的输出为
{"cce0":"frityyy"},带有simple.JSONObject -
stackoverflow.com/questions/14941163/… 的可能重复项。我想你可以试试这个答案stackoverflow.com/a/14941402/6952155
-
哦,知道了,当你添加
MediaType.APPLICATION_JSON_VALUE时,它会将对象转换为 Json,但由于你已经有 json,它会尝试再次转换,如果你这样做ResponseEntity.status(HttpStatus.OK).body(jsonModel.toString())import org.springframework.http.ResponseEntity;或只需return jsonModel.toString();就可以了