Android中Webview打开网页的同时发送HTTP头信息方法
众所周知,当你点击一个超链接进行跳转时,WebView会自动将当前地址作为Referer(引荐)发给服务器,因此很多服务器端程序通过是否包含referer来控制盗链,所以有些时候,直接输入一个网络地址,可能有问题,那么怎么解决盗链控制问题呢,其实在webview加载时加入一个referer就可以了,如何添加呢?
从Android2.2(也就是API8)开始,WebView新增加了一个接口方法,就是为了便于我们加载网页时又想发送其他的HTTP头信息的。
publicvoidloadUrl(Stringurl,Map<String,String>additionalHttpHeaders) AddedinAPIlevel8 LoadsthegivenURLwiththespecifiedadditionalHTTPheaders. Parameters urltheURLoftheresourcetoload additionalHttpHeaderstheadditionalheaderstobeusedintheHTTPrequestforthisURL,specifiedasamapfromnametovalue.NotethatifthismapcontainsanyoftheheadersthataresetbydefaultbythisWebView,suchasthosecontrollingcaching,accepttypesortheUser-Agent,theirvaluesmaybeoverridenbythisWebView'sdefaults.
以下是一个简单的demo,来展示以下如何使用。
publicvoidtestLoadURLWithHTTPHeaders(){
finalStringurl="http://jb51.net";
WebViewwebView=newWebView(getActivity());
Map<String,String>extraHeaders=newHashMap<String,String>();
extraHeaders.put("Referer","http://www.google.com");
webView.loadUrl(url,extraHeaders);
}
同样上面也可以应用到UserAgent等其他HTTP头信息。
热门推荐
1 圆圆的祝福语简短
10 考试祝福语日文简短版
11 孙女结婚姥姥祝福语简短
12 法考面试祝福语简短
13 祝妹妹毕业祝福语简短
14 圣诞祝福语简短文字
15 夸赞老师祝福语搞笑简短
16 女朋友祝福语简短新年
17 怀念青春祝福语简短
18 写给情侣祝福语 浪漫简短