【问题标题】:How do I set the user agent in Volley?如何在 Volley 中设置用户代理?
【发布时间】:2013-06-04 08:26:52
【问题描述】:
我有一个奇怪的小问题:如何在 Volley 中设置用户代理?
我需要一些网站的完整版(桌面版),不是移动版。
我尝试将变量 userAgent 从“volley/0”更改为“Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.93 Safari/537.36”(我的 Chrome) .没有不同。
有什么建议吗?
【问题讨论】:
标签:
android
android-volley
【解决方案1】:
你应该重写Request中的getHeaders()方法并设置“User-agent”头
在您的请求类中:
@Override
public Map<String, String> getHeaders(){
Map<String, String> headers = new HashMap<String, String>();
headers.put("User-agent", "YOUR_USER_AGENT");
return headers;
}
【解决方案2】:
从@alex 的回答开始,您需要在将其添加到队列时将此@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