前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Android Webview加载网页时发送HTTP头信息

Android Webview加载网页时发送HTTP头信息

作者头像
技术小黑屋
发布于 2018-09-04 08:43:07
发布于 2018-09-04 08:43:07
1.5K0
举报
文章被收录于专栏:技术小黑屋技术小黑屋

众所周知,当你点击一个超链接进行跳转时,WebView会自动将当前地址作为Referer(引荐)发给服务器,因此很多服务器端程序通过是否包含referer来控制盗链,所以有些时候,直接输入一个网络地址,可能有问题,那么怎么解决盗链控制问题呢,其实在webview加载时加入一个referer就可以了,如何添加呢?

Android 2.2 (也就是API 8)开始,WebView新增加了一个接口方法,就是为了便于我们加载网页时又想发送其他的HTTP头信息的。

public void loadUrl (String url, Map<String, String> additionalHttpHeaders) Added in API level 8 Loads the given URL with the specified additional HTTP headers. Parameters url the URL of the resource to load additionalHttpHeaders the additional headers to be used in the HTTP request for this URL, specified as a map from name to value. Note that if this map contains any of the headers that are set by default by this WebView, such as those controlling caching, accept types or the User-Agent, their values may be overriden by this WebView’s defaults.

以下是一个简单的demo,来展示以下如何使用。

1 2 3 4 5 6 7

public void testLoadURLWithHTTPHeaders() { final String url = "http://droidyue.com"; WebView webView = new WebView(getActivity()); Map<String,String> extraHeaders = new HashMap<String, String>(); extraHeaders.put("Referer", "http://www.google.com"); webView.loadUrl(url, extraHeaders); }

同样上面也可以应用到UserAgent等其他HTTP头信息 英文版文章

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Load URL With Extra HTTP Headers Using WebView in Android
As we know, Webview will add the referer into the reqeust if we click a hyperlink to navigate to ano
技术小黑屋
2018/09/04
1.1K0
WebView完全解读
WebView是一个使用WebKit引擎(4.4之后基于Chromium)的浏览器控件。因此可以将WebView当做一个完整的浏览器使用。
小小工匠
2021/08/16
3.5K0
Android webView打开网页
这个就比较简单了,直接拖一个控件,再加载一下url,记得在AndroidManifest.xml中加一下权限
SingYi
2022/07/13
2.2K0
Android webView打开网页
Android WebView 加载网页遇到的问题
问题1:如果WebView连接网页报错,那么请看AndroidManifest.xml文件是否配置网络请求,如果配置了还是同样的报错,那么,在MainActivity.java文件中加入这个代码:
White feathe
2021/12/08
1.2K0
Android基于JsBridge封装的高效带加载进度的WebView
从去年4月项目就一直用起了JsBridge,前面也针对jsBridge使用姿势介绍过一篇入门篇,《Android JsBridge实战 打造专属你的Hybrid APP》,本篇接着继续深入,通过再次优化封装,大大优化了部分代码,简化上层调用流程,快速部署你的Hybridge APP。
开发者技术前线
2020/11/23
1.7K0
Android基于JsBridge封装的高效带加载进度的WebView
这是一份Android全面&详细的-Webview使用攻略
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sNTzdRBr-1640421131904)(https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2017/5/24/96d6b5ac37d63dcc0d7689c9e33fff57~tplv-t2oaga2asx-watermark.image)]
用户9253515
2021/12/25
5.3K2
Android | 网络技术基础梳理——WebView以及HTTP运用、XML以及JSON解析(demo+bug)
当然还要注意一点,如果你的模拟器和SDK是Android 9.0(API级别28),那运行如上代码会出现下面这个问题:
凌川江雪
2019/10/16
3.1K0
Android | 网络技术基础梳理——WebView以及HTTP运用、XML以及JSON解析(demo+bug)
安卓Webview网页秒开策略探索
webview初始化->DOM下载→DOM解析→CSS请求+下载→CSS解析→渲染→绘制→合成
Rouse
2019/07/17
3.6K1
安卓Webview网页秒开策略探索
phantomjs API 中文版 无界面浏览器 js处理的爬虫
phantomjs [options] somescript.js [arg1 [arg2 […]]]
十四君
2019/11/27
1.9K0
Android开发笔记(六十四)网页加载与JS调用
如果一个网站已经有现成的网页及业务逻辑,那么使用WebView将其内嵌到app中,省去了app重画页面与http通信的事情,无疑是更经济的做法。WebView就是Android上的一个浏览器内核,可自动展示web页面,并且实现js代码的相互调用。 下面是WebView的常用方法: getSettings : 获取浏览器的web设置信息。 addJavascriptInterface : 添加本地的js代码接口。 removeJavascriptInterface : 移除本地的js代码接口。在4.0至4.2的Android系统上,Webview自己增加了searchBoxJavaBredge_,可能被黑客利用导致远程代码执行。为阻止该漏洞,需要手工移除接口searchBoxJavaBredge_。代码如下所示:
aqi00
2019/01/18
6.6K0
RFC2616-HTTP1.1-Header Field Definitions(头字段规定部分—单词注释版)
part of Hypertext Transfer Protocol -- HTTP/1.1 RFC 2616 Fielding, et al. 14 Header Field Definitions(规定) This section(部分,章节) defines(规定定义) the syntax(语法) and semantics(语意) of all standard(标准) HTTP/1.1 header fields. For entity-header fields, both sender(发
zaking
2018/07/04
1.3K0
Web 嵌入 | Electron 安全
大家好,今天和大家讨论的是 Web 嵌入,无论是网站还是应用程序,在部分场景下我们需要嵌入一些第三方的 web 内容,例如我写了篇技术文章,其中部分包含视频内容,我上传到 B 站上了,我想把这段内容嵌入到我的技术文章中,就可能要使用 web 嵌入技术
意大利的猫
2024/05/08
1.3K0
Web 嵌入 | Electron 安全
开发工具Tools·Nginx 配置
Nginx 的 listen 指令用于监听指定的 IP 地址和端口号,配置形式为:listen <address>:<port>。若 IP 地址或端口缺失,Nginx 会以默认值来替换。
数媒派
2022/12/01
1.4K0
Docker 介绍
    Docker就是手机中的各种APP,只需要一个系统就可以下载自己所需的应用
IT茂茂
2022/05/11
2.3K0
Docker 介绍
JavaScript 权威指南第七版(GPT 重译)(六)
JavaScript 语言是在 1994 年创建的,旨在使 Web 浏览器显示的文档具有动态行为。自那时以来,该语言已经发生了显著的演变,与此同时,Web 平台的范围和功能也迅速增长。今天,JavaScript 程序员可以将 Web 视为一个功能齐全的应用程序开发平台。Web 浏览器专门用于显示格式化文本和图像,但是,像本机操作系统一样,浏览器还提供其他服务,包括图形、视频、音频、网络、存储和线程。JavaScript 是一种使 Web 应用程序能够使用 Web 平台提供的服务的语言,本章演示了您如何使用这些最重要的服务。
ApacheCN_飞龙
2024/03/23
9830
JavaScript 权威指南第七版(GPT 重译)(六)
相关推荐
Load URL With Extra HTTP Headers Using WebView in Android
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档