【发布时间】:2020-10-30 09:34:33
【问题描述】:
我正在尝试向我的 springboot mvc 控制器发送和 ajax 发布请求,但没有成功。我查看了许多类似的主题,尝试了给定的解决方案,但根本没有成功。 如果我将请求类型更改为 GET,它会触发控制器端点。
甚至没有在控制器中触发端点功能。它在浏览器控制台中仅显示以下错误:jquery-3.4.1.js:9837 POST http://localhost:8080/rede-credenciada 500
我向邮递员提出了同样的请求,它给出了以下错误:
{
"timestamp": "2020-07-09T17:46:20.920+0000",
"status": 999,
"error": "None",
"message": "No message available"
}
注意:它只发生在 POST 请求中,如果我更改为 GET,它可以正常工作。请求被控制器“监听”。
这是我的 ajax 请求:
const json = {
idGrupoProcedimento: 0,
idTipoEspecialidade: $("#especialidade").val(),
uf: $("#estado").val(),
codCidade: $("#cidade").val()
}
const jsonString = JSON.stringify(json);
$.ajax({
url: "/rede-credenciada",
type: 'POST',
contentType: "application/json",
dataType: "application/json",
data: jsonString,
success: function(data){
console.log(data);
},
error: function(e) {
console.log(e.message);
}
});
这里,我的终点:
@RequestMapping(value = "/rede-credenciada", method = RequestMethod.POST, consumes = "application/json")
@ResponseBody
public RedeCredenciadaResponse buscaRedeCredenciadaPorFiltro(@RequestBody RedeCredenciadaRequest request) {
... some logic
RedeCredenciadaResponse redeCredenciada = new RedeCredenciadaResponse();
redeCredenciada.setPessoasFisicas(pessoas);
redeCredenciada.setEmpresas(empresas);
return redeCredenciada;
}
这是我的包装类:
public class RedeCredenciadaRequest {
private int idGrupoProcedimento;
private int idTipoEspecialidade;
private String uf;
private String codCidade;
public int getIdGrupoProcedimento() {
return idGrupoProcedimento;
}
public void setIdGrupoProcedimento(int idGrupoProcedimento) {
this.idGrupoProcedimento = idGrupoProcedimento;
}
public int getIdTipoEspecialidade() {
return idTipoEspecialidade;
}
public void setIdTipoEspecialidade(int idTipoEspecialidade) {
this.idTipoEspecialidade = idTipoEspecialidade;
}
public String getUf() {
return uf;
}
public void setUf(String uf) {
this.uf = uf;
}
public String getCodCidade() {
return codCidade;
}
public void setCodCidade(String cidade) {
this.codCidade = cidade;
}
【问题讨论】:
-
您的服务器正在其控制台输出上打印错误消息。发布它们。
-
你的意思是在 Eclipse 控制台中吗?
-
500 表示服务器端错误,请检查后端应用程序中的日志
-
这就是问题所在,我的后端应用程序中根本没有日志!!!
-
无论服务器的标准输出在哪里,如果您在 Eclipse 中运行它,通常是 Eclipse 控制台。
标签: java jquery ajax spring-boot post