android用户登录volley,如何在Android上使用Volley进行基本身份验证?

是的,这是可能的.您需要覆盖Request.getHeaders().我很懒,我使用Spring的HttpHeaders和HttpAuthentication

Android,但你可以建立auth头并从方法返回.从getHeaders()可以返回基本认证的auth标头.这是一个基本认证的示例请求.

public class GetUser extends Request {

private static final String TAG = GetUser.class.getName();

private Response.Listener mListener;

private ObjectMapper mMapper = new ObjectMapper();

public GetUser(Response.ErrorListener errorListener, Response.Listener listener){

super(Method.GET, PoisUtils.BASE_URL + "/users", errorListener);

mListener = listener;

}

@Override

protected Response parseNetworkResponse(NetworkResponse response) {

String jsonString = new String(response.data);

try {

User result = mMapper.readValue(jsonString, User.class);

return Response.success(result, getCacheEntry());

} catch (IOException e) {

Log.d(TAG, e.getMessage());

}

return null;

}

@Override

protected void deliverResponse(User response) {

mListener.onResponse(response);

}

@Override

public Map getHeaders() throws AuthFailureError {

return AuthUtils.buildAuthHeaders().toSingleValueMap();

}

}

这里是如何构建认证标头

public static HttpHeaders buildAuthHeaders(){

if(UserUtils.isUserLogged()){

HttpHeaders requestHeaders = new HttpHeaders();

User user = PoisApplication.get().getUser();

HttpAuthentication auth = new HttpBasicAuthentication(

user.getUsername(), user.getPassword());

requestHeaders.setAuthorization(auth);

return requestHeaders;

}

return null;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值