Android开发中有时候为了要给图片服务器加上防盗链设置,需要我们在webview的请求里加上referer头,那么如何给webview添加referer头呢?
给webview添加referer头,主要分为以下两个部分:
1:webview直接加载URL地址:
Map<String,String> webviewHead =new HashMap<>();
webviewHead.put("Referer", DownloadType.HOST);
mWebView.loadUrl(mUrl,webviewHead);
1:webview加载拼好的HTML代码:
mWebView.loadDataWithBaseURL(DownloadType.HOST, null, "text/html", "UTF-8", null);
loadDataWithBaseURL方法的第一个参数是baseUrl,这个参数便可以传referer的值,点开源码可以看到注释里有
- Note that the baseUrl is sent in the ‘Referer’ HTTP header when requesting subresources (images, etc.) of the page loaded using this method.
大概的意思就是baseUrl是在“Referer”HTTP头中发送的
(以上问题均是自己开发遇到并解决的,如有不对或有更好的方法请大佬们指教,如对你们有帮助,倍感荣幸)