我有一个奇怪的小问题:如何在 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)。没有不同。
有什么建议吗?
我有一个奇怪的小问题:如何在 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)。没有不同。
有什么建议吗?
您应该覆盖 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;
}
继@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 答案。-如何在 Volley Request 中设置自定义标头