【问题标题】:REST call response HTTPS Status 415REST 调用响应 HTTPS 状态 415
【发布时间】:2019-07-15 10:02:48
【问题描述】:

请在下面找到我的控制器代码。

@RequestMapping(value = "/reconrangesummary", method=RequestMethod.POST, produces=MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
@ResponseBody
public String getReconRangeSummaryReport(@RequestBody RequestData requestData){
    logger.info("Inside Interest Service Controller - getReconRangeSummaryReport");
    List<ReconRangeSummaryDetails> reconRangeSummaryDetails = new ArrayList<ReconRangeSummaryDetails>();
    DashboardRequestDetails requestDetails = AccountUtils.convertRequest(requestData);
    reconRangeSummaryDetails = accountService.getReconRangeSummaryDetails(requestDetails);
    logger.info("Exit Interest Service Controller - getReconRangeSummaryReport");

    return new Gson().toJson(reconRangeSummaryDetails);

}

请求数据类:

public class RequestData {

private String role;
private String branchCode;
private String circle;
private String requestDate;
public String getRole() {
    return role;
}
public void setRole(String role) {
    this.role = role;
}
public String getBranchCode() {
    return branchCode;
}
public void setBranchCode(String branchCode) {
    this.branchCode = branchCode;
}
public String getCircle() {
    return circle;
}
public void setCircle(String circle) {
    this.circle = circle;
}
public String getRequestDate() {
    return requestDate;
}
public void setRequestDate(String requestDate) {
    this.requestDate = requestDate;
}

我正在使用 POST 方法和 content-type:application/json 在邮递员中传递以下请求。

{"role":"makeruser", "branchCode":"00112", "circle":"circlename", "requestDate":"17-12-2018"}   

但我收到如下错误响应。

HTTP 状态 415
服务器拒绝了这个请求,因为请求实体的格式不受所请求方法 () 的请求资源支持。

【问题讨论】:

  • 这一切都来自您的requestDate 格式吗?几天前我正在与同样的问题作斗争,对我来说这就是解决方案。
  • 我认为这不是问题。在主线程中添加 RequestData 类以获取您的信息。
  • 好的。 Postman 发送的硬数据是什么?您可以通过发送按钮下方的代码链接看到这一点。
  • 您好 JussiV,请在下方查找信息。 POST /scfu_dashboard_services/reconrangesummary HTTP/1.1 主机:localhost:8080 内容类型:application/json 缓存控制:无缓存 Postman-Token:15fc05d5-c56d-8975-274f-86c74176b1b1 {“角色”:“makeruser”,“ branchCode":"00112", "circle":"circlename", "requestDate":"17-12-2018" }

标签: json rest http-status-code-415


【解决方案1】:

在发布您的请求时,您也必须在这种情况下指定 JSON/应用程序媒体类型。 如果您使用 Postman,请更改以下复选框:

如果需要,也可以使用命令行版本:

curl -d '{"role":"makeruser", "branchCode":"00112", "circle":"circlename", "requestDate":"17-12-2018"}' -H "Content-Type: application/json" -X POST http://localhost:9009/new/reconrangesummary

【讨论】:

  • 在邮递员中,我只发布了您提到的请求。通过选择战争和 JSON(application/json)。以相同的错误响应结束
  • 你能发布你的 curl 输出吗?另外,我建议确保您的正文采用 UTF8 编码并将端点更改为 MediaType.APPLICATION_JSON_URF8 以保持一致性
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-02-18
  • 2020-09-12
  • 2015-08-13
  • 1970-01-01
  • 2020-07-26
  • 2012-06-12
  • 2011-05-07
相关资源
最近更新 更多