从GET请求获得球衣中的标题

Alf*_*tri 3 java rest json jersey angularjs

从js页面(角度)我调用REST请求,GET方法,我是否要传递一个标头,这是我从REST请求调用的函数:

        allstaffworking: function(_getstaff){
            var currentToken = _GetToken();

            var Headers = {
                token: currentToken.stringtoken
            };

            console.log("idtoken"+Headers);

            if (currentToken !== null) {
            $http({  
                        method : 'GET',  
                        headers: Headers,
                        url : REST_URL+'staff/working'
                    }).then(function successCallback(response) {  
                        _getstaff(response)
                    }, function errorCallback(response) {  
                        console.log(response.statusText);  
                    });  
               }  else {
                console.log("NON SEI LOGGATO!!!");
            }
        },
Run Code Online (Sandbox Code Playgroud)

没有headers: Headers,它的工作原理,但我想传递一个重要的json字符串:{"idtokenStaff":11,"staffType":{"idstaffType":2,"type":"Dipendente"},"tokenStaff":"88d08m8ve4n8i71k796vajkd01"}在Headers中.我不知道如何在泽西岛拿这个字符串.这是java文件,我有REST方法:

 @Path("/staff")  
public class StaffController {  

BaseDao sDao =  new StaffDaoImpl();
StaffDao stfDao =  new StaffDaoImpl();
TokenStaffDao tsDao = new TokenStaffDaoImpl();
TokenStaff ts = new TokenStaff();

    @GET  
    @Produces(MediaType.APPLICATION_JSON)  
 public List<Staff> getStaff()  
 {  

  List<Staff> listOfStaff=sDao.getAll(Staff.class);
  return listOfStaff;  
 }  

    @GET  
    @Path("/working")  
    @Produces(MediaType.APPLICATION_JSON)
    @Consumes("application/json")
    public List<Staff> getWStaff(@HeaderParam("token") String token) throws JSONException  
 {  

        JSONObject jsonObj = new JSONObject(token);

    Boolean id = tsDao.getExistence(jsonObj.getInt("idtokenStaff"));
    if (id){
        List<Staff> listOfWStaff=stfDao.getAllW();
        return listOfWStaff;  
    }
    else
        return null;
 }
}
Run Code Online (Sandbox Code Playgroud)

从头开始:@HeaderParam("token") String token.我如何获取标题的元素?

pri*_*kar 8

回答这个有点迟,但你也可以使用@Context注释来获取httpheaders.例如.

public List<Staff> getWStaff(@Context HttpHeaders httpheaders) {
   String token = httpHeaders.getHeaderString("token");
    JSONObject jsonObj = new JSONObject(token);
}
Run Code Online (Sandbox Code Playgroud)