如何解决如何在WebView的url中发送引用请求
| 我需要在我的Android应用中显示一个网页,该网页正在寻找引荐来源以绕过安全性。我是Android的新手,所以我知道如何在网络视图中显示网页,但不知道如何将\'referer \'与url请求一起发送。我确定它将需要更新HTTPHeaderField,但在Android中找不到任何引用。下面的代码是我用来打开网页的代码,但是没有\“ referer \”,而是\\拒绝访问\。WebView webview = new WebView(this);
setContentView(webview);
webview.loadUrl(\"http://www.mywebsite.com\");
我认为答案可能在于WebView.LoadURL方法,该方法添加了额外的标头,但我找不到任何示例。
解决方法
您需要哪个API级的功能?
从API级别8开始,有了第二个
loadUrl
函数:
public void loadUrl (String url,Map<String,String> extraHeaders)
使用extraHeaders
,您应该可以发送推荐人。
编辑:
这是一个完整的工作示例:
String url = \"http://www.targetserver.tld/\";
Map<String,String> extraHeaders = new HashMap<String,String>();
extraHeaders.put(\"Referer\",\"http://www.referer.tld/login.html\");
WebView wv;
wv = (WebView) findViewById(R.id.webview);
wv.loadUrl(url,extraHeaders);
, 您将需要使用意图过滤器来捕获和修改WebView请求。
假设您需要指定doamin.com/page.html作为引荐来源网址
设置意图过滤器以捕获WebView中的所有HTTP请求
如果请求用于\“ doamin.com/page.html \”,则返回具有刷新标签的预定义页面,以将用户发送到\“ http://www.mywebsite.com \”
domain.com/page.html将作为引荐来源发送到mywebsite.com
在较新的API中,您可以在loadUrl本身中指定标头。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。