我使用泽西岛,我希望从请求标题中获取参数;
这是我的java服务器端代码:
@GET
@Path("/usersForMobile")
@Produces({ MediaType.APPLICATION_JSON + ";charset=utf-8" })
public Response getUsersForMobile(@Context UriInfo info) {
String rashutId ;
String userName ;
String password;
List<User> inspectorList= new ArrayList<User>();
try {
rashutId = info.getQueryParameters().getFirst("rashutId");
userName = info.getQueryParameters().getFirst("userName");
password = info.getQueryParameters().getFirst("password");
inspectorList = LoginService.getInspectorsList(userName,password,rashutId);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(!inspectorList.isEmpty())
return Response.status(Status.OK).entity(new UsersResponse(inspectorList, true)).build();
else
return Response.status(Status.OK).entity("No inspectors found").build();
}
}
到目前为止,我从url获取了params,但它不可靠,所以我决定在标题中传递它们,如何从请求标题中获取它们?
谢谢!
答案 0 :(得分:1)
您可以使用@HeaderParam(&#34; paramName&#34;)来获取HTTPHeader参数,例如
public Response getUsersForMobile(@Context UriInfo info, @HeaderParam("paramName")String paramValue)
或使用您拥有的上下文
String paramValue = info.getRequestHeader("paramName").get(0);