2013-06-04 24 views
4

我有一个小奇怪的问题:我如何在Volley中设置用户代理?如何在Volley中设置用户代理?

我需要完整版的一些网站(桌面版),不是手机版。我尝试将变量userAgent从“volley/0”更改为“Mozilla/5.0(X11; Linux i686)AppleWebKit/537.36(KHTML,如Gecko)Chrome/27.0.1453.93 Safari/537.36”(我的Chrome )。没有不同。

有什么建议吗?

+0

[这里有一些教程](http://androidcustomviews.com/portfolio/volley-easy-fast-networking-for-android/)检查。 –

+0

https://developer.android.com/training/volley/request-custom.html显示另一种方式。 – djunod

回答

26

你应该在申请覆盖的方法getHeaders(),并设置“用户代理”头

在您的请求类:

@Override 
public Map<String, String> getHeaders(){ 
    Map<String, String> headers = new HashMap<String, String>(); 
    headers.put("User-agent", "YOUR_USER_AGENT"); 
    return headers; 
} 
+0

谢谢,非常感谢! ( - : – none

2

继从@亚历克斯的答案,你需要添加此将请求对象添加到队列时,将@Override函数添加到您的请求对象中。

Request request = new Request(
    Method.GET, 
    url, 
    Listener listener, 
    ErrorListener errorListener) { 
    @Override 
    public Map<String, String> getHeaders(){ 
     Map<String, String> headers = new HashMap<String, String>(); 
     headers.put("User-agent", "YOUR_USER_AGENT"); 
     return headers; 
    } 
}; 

要了解更多关于如何添加到您的请求,请参阅有关设置页眉这个StackOverflow的答案。 - How to set custom header in Volley Request

相关问题