User-Agent:用户代理。是一种向访问网站提供你所使用的浏览器类型、操作系统及版本、CPU 类型、浏览器渲染引擎、浏览器语言、浏览器插件等信息的标识。UA字符串在每次浏览器 HTTP 请求时发送到服务器
Referer:HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器我是从哪个页面链接过来的,服务器籍此可以获得一些信息用于处理
public static String getHtmls(String url) throws IOException {RequestConfig globalConfig = RequestConfig.custom().setCookieSpec(CookieSpecs.IGNORE_COOKIES).build();String html = "";CloseableHttpClient httpClient = HttpClients.custom().setDefaultRequestConfig(globalConfig).build();HttpGet httpget = new HttpGet(url);//浏览器标识 (操作系统标识; 加密等级标识; 浏览器语言) 渲染引擎标识 版本信息httpget.setHeader("User-Agent","Mozilla/5.0 (Linux; U; Android 2.3.6; zh-cn; GT-S5660 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 MicroMessenger/4.5.255");// 伪装头httpget.setHeader("Referer", "https://mp.weixin.qq.com");try {HttpResponse responce = httpClient.execute(httpget);//int resStatu = responce.getStatusLine().getStatusCode();if (resStatu == HttpStatus.SC_OK) {HttpEntity entity = responce.getEntity();if (entity != null) {html = EntityUtils.toString(entity);// 获得html源代码}}} catch (Exception e) {System.out.println("访问 " + url + " 出现异常!");e.printStackTrace();} finally {// 释放连接httpClient.close();}return html;}