服务器 415 响应代码

2022-09-03 05:08:52

我正在使用Jetty Web服务器和泽西岛进行REST处理。

我定义了:

@POST
@Path("/sendMessage")
@Consumes ({MediaType.APPLICATION_XML, MediaType.TEXT_XML})
public Response sendMessage(@Context final UriInfo uriInfo) 
{
    logger.debug("sendMessage:");
    System.out.println("Received POST!");
    return Response.status(Response.Status.OK).build();

}

但是,当我发送 http 请求时,服务器返回 415 代码。http://localhost:8080/hqsim/sendMessage

这就像不允许打电话一样。如何修复此错误?


答案 1

415 表示媒体类型不受支持。最有可能的情况是,您要么在请求中缺少标头,要么它不正确。在您的情况下,它必须是 或 。Content-Typeapplication/xmltext/xml


答案 2

如果你正在使用公理,并制作;

a) 发布请求,您应按如下方式定义请求

await axios.post("the url you're speaking to",
     {the data to post}, 
     {
        headers: {"Content-Type": "application/json"}
     })

b) 获取请求;

await axios.get("the url you're speaking to",
     {
        data: {},
        headers: {"Content-Type": "application/json"},
        params: {'varX': '34'}
     })

其中 varX 是您与请求参数一起发送的变量的名称,如果您不发送查询字符串,则也可以为空。

因此,网址将显示为;

https://myurl.com/?varX=34 

推荐