我正在使用 kotlin 中的 ARest 框架设置一个由 GET、DELETE 和 POST 方法 API 组成的新服务。
我将输入包装在数据类中并将其传递给方法。在这种情况下,DELETE 和 POST 方法可以正常工作,但我遇到了 GET 方法的一些问题。
用于包装输入的数据类:
class GetRequest(@QueryParam("aaa") var aaa: String? = null,
@QueryParam("bbb") var bbb: String? = null,
@QueryParam("ccc") var ccc: UserDefinedType? = null)
型号定义:
@GET
@Path("getStatus/")
@Produces(MediaType.APPLICATION_JSON)
fun getStatus(@NotNull @BeanParam getRequest: GetRequest) : GetResponse
我使用招摇来调用方法,请求正文:
{
"aaa": "string",
"bbb": "string",
"ccc": "HEAD"
}
我的理解是,@BeanParam 会将查询中的相应参数注入到数据类中。但是从招摇我发现请求 URL 为 https://:8090/api/getStatus 并且找不到任何查询参数。因此,“aaa”的值保持为空,而不是更改为“字符串”。有人可以帮我指出我在这里犯的错误吗?