首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

下载Webview中的pdf不起作用(错误只能下载HTTP/HTTPS Uri: Blob )

问题描述:下载Webview中的pdf不起作用(错误只能下载HTTP/HTTPS Uri: Blob)

回答: Webview是一种用于在移动应用程序中显示Web内容的组件。在下载Webview中的pdf时遇到的问题是只能下载HTTP/HTTPS Uri: Blob的错误。

解决这个问题的方法是使用适当的URI来下载PDF文件。Blob URI是一种特殊的URI,用于表示二进制大对象(Blob)。在Webview中,Blob URI可能无法直接下载,因此需要使用其他方法。

以下是解决该问题的一种可能方法:

  1. 确保PDF文件的URL是有效的,并且可以通过浏览器或其他下载工具正常下载。
  2. 在Webview中,可以尝试使用JavaScript来处理PDF文件的下载。可以通过在Webview中注入JavaScript代码来实现这一点。具体步骤如下:
  3. a. 在Webview加载页面之前,使用Webview的setWebViewClient方法设置一个自定义的WebViewClient。
  4. b. 在自定义的WebViewClient中,重写shouldOverrideUrlLoading方法。在该方法中,检查URL是否以.pdf结尾,如果是,则使用JavaScript代码触发文件下载。
  5. c. 使用WebView的loadUrl方法执行JavaScript代码,以触发文件下载。例如,可以使用以下代码:
  6. c. 使用WebView的loadUrl方法执行JavaScript代码,以触发文件下载。例如,可以使用以下代码:
  7. d. 确保在AndroidManifest.xml文件中添加网络权限,以允许Webview加载外部资源。
  8. 如果以上方法仍然无法解决问题,可以尝试使用第三方库或框架来处理PDF文件的下载。例如,可以使用开源的PDF阅读器库,如MuPDF或PDF.js,来加载和显示PDF文件,并提供下载功能。

总结: 下载Webview中的PDF文件时遇到只能下载HTTP/HTTPS Uri: Blob的错误,可以尝试使用JavaScript注入来触发文件下载,或者使用第三方库或框架来处理PDF文件的下载。具体实现方法可以根据具体情况选择适合的解决方案。

腾讯云相关产品推荐: 腾讯云提供了丰富的云计算产品和服务,可以帮助开发者构建稳定、高效的应用程序。以下是一些与Webview和文件下载相关的腾讯云产品:

  1. 腾讯云移动浏览器(Tencent Mobile Browser):腾讯云提供的移动浏览器,可在移动设备上高效地加载和显示Web内容。
  2. 腾讯云对象存储(Tencent Cloud Object Storage,COS):腾讯云提供的分布式对象存储服务,可用于存储和管理大规模的文件和数据。可以将PDF文件上传到COS,并通过生成的URL进行下载。
  3. 腾讯云移动推送(Tencent Cloud Push):腾讯云提供的移动推送服务,可用于向移动设备发送推送通知。可以使用移动推送服务发送包含PDF文件下载链接的通知,以便用户点击下载。

请注意,以上仅为腾讯云的一些相关产品,其他云计算品牌商也提供类似的产品和服务。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android WebView实现文件下载功能

WebView控制调用相应WEB页面进行展示。当碰到页面有下载链接时候,点击上去是一点反应都没有的。...原来是因为WebView默认没有开启文件下载功能,如果要实现文件下载功能,需要设置WebViewDownloadListener,通过实现自己DownloadListener来实现文件下载。...); } } 这只是调用系统已经内置浏览器进行下载,还没有WebView本身进行文件下载,不过,这也基本上满足我们应用场景了。...,如果希望点击链接继续在当前browser响应, // 而不是新开Android系统browser响应该链接,必须覆盖 webviewWebViewClient对象。...= Uri.parse("http://m.ql18.com.cn/hpf10/1.pdf"); Uri uri = Uri.fromFile(file); String type = getMIMEType

3.8K20

在Android应用绕过主机验证小技巧

, getAuthorizationHeaders()); // or webView.loadUrl(uri.toString()) } android.net.Uri和java.net.URL解析器存在问题...,它们不识别校验权限部分反斜杠(如果你测试java.net.URI将显示异常)。...如果您尝试创建一个远程PoC以匹配过滤器(请记住,Android也用于parsedIntent.getData().getHost()匹配intent-filters定义值)并触发错误 你会注意到,在第一个例子,所有都\将被替换/,在第二个例子,它们将被保留编码,反斜杠技巧将不起作用。但仔细研究了intent://计划如何工作后,我找到了一种远程利用它方法。...简介: https://www.mbsd.jp/Whitepaper/IntentScheme.pdf 所有反斜杠都可以保存在未更改状态,例如URI哈希部分,这里https://android.googlesource.com

1.8K50

前端vue 封装上传文件和下载文件方法 导入方法直接使用

'https://jiangsihan.cn/' //通过文件下载url拿到对应blob对象 function getBlob(url) { return new Promise(resolve...=> { saveAs(blob, fileName) }) } /** * download属性是HTML5新增属性 * href属性地址必须是非跨域地址...,如果引用是第三方网站或者说是前后端分离项目(调用后台接口),这时download就会不起作用。...* 此时,如果是下载浏览器无法解析文件,例如.exe,.xlsx..那么浏览器会自动下载,但是如果使用浏览器可以解析文件,比如.txt,.png,.pdf....浏览器就会采取预览模式.../pdf浏览器则会判断文件为 pdf ,自动执行预览策略) */ 导入: import { downloadEvt } from "@/utils/download"; 使用: downloadEvt

2.6K10

Android浏览器直接打开网页上文档

在做移动办公软件时,需要移动终端在线打开网页上文档,在iPad上能直接打开文档在线显示,但是在android系统上却不能,它只是把这个文档下载下来,然后只能自己找到文档位置点击打开,很不方便。...没办法,只能自己写个客户端,拦截请求,自动下载和打开。...,先下载,再调用系统安装阅读器打开 try { //下载文件到SD卡 File file = downloadFile(url); //调用适合阅读器显示文件...(“http://localhost:8888/OpenFile/fileList.html“); } /** * 下载文件 * @param fileUrl * @return..., fileType); return intent; } /** * 从配置文件获取要下载文件后缀和对应MIME类型 * @param fileName * @return

73320

Android Deep Link 攻击面

图片不过需要注意是,上面的 ***没安装则跳转到下载应用页\*** 是 Deferred deeplink(延迟深度链接),他和基础deeplink相比,如果用户没有下载APP,则引导用户下载安装该...提取并调用APPDeep Link测试APP:https://github.com/hax0rgb/InsecureShop/releases1.2.1....窃取本地数据在上面2个基础上进行深入利用,**但我感觉有点鸡肋,因为http协议无法跨域到file协议,就只能从file协议跨到file协议**上述2处其实都和URL跳转差不多,可以控制跳转到任意网站...​ Note 这里只能从file协议到file协议才可以成功,如果从http协议到file协议,异常日志为...:Cross origin requests are only supported for protocol schemes: http, data, chrome, https.所以这里也是为什么认为利用比较鸡肋地方

1.6K100

android系统webview最新版本_webview加载h5页面空白

也是相当无奈,目前发现了好多android端与ios端webView异同。...android端与ios确不同大致包括: 1:android不能直接打开html下载文件,需要先下载保存本地在打开本地文件 2:android不能直接打开pdf文件,同样要下载再打开 3:如题,h5...1:出现原因: H5 访问本地文件时候,使用 ,WebView 出于安全性考虑,限制了以上操作 2:解决方法 重写 WebviewChromeClient openFileChooser(...boolean onShowFileChooser(WebView webView, ValueCallback filePathCallback, FileChooserParams fileChooserParams...发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/190619.html原文链接:https://javaforall.cn

1.1K40

WebView深度学习(二)之全面总结WebView遇到坑及优化

以后WebView加载链接为Https开头,但是链接里面的内容,比如图片为Http链接,这时候,图片就会加载不出来,怎么解决?...★★ 原因分析:原因是Android 5.0上Webview默认不允许加载HttpHttps混合内容: ◆◆ 解决方案: if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP...● MIXED_CONTENT_NEVER_ALLOW 不允许Https加载Http内容,即不允许从安全起源去加载一个不安全 资源; ● MIXED_CONTENT_COMPLTIBILITY_MODE...WebView有很多问题,比如:不能打开pdf,播放视屏也只能打开硬件加速才能支持,在某些机型上会崩溃。...当WebView加载出错时,我们会在WebViewClient实例onReceivedError()方法接收到错误,我们就在这里做些手脚: @Override public void onReceivedError

5.6K30

Android deeplink漏洞

验证需要执行以下步骤:http/https 请求清单自动应用程序链接验证。这向 Android 系统发出信号,表明它应该验证应用程序是否属于意图过滤器中使用 URL 域。..." /> 在WebView打开任意URL 如果应用程序根据deep link参数在 WebView...例如,假设应用程序通过以下流程打开基于 http/https URL 本地文件: 用户发送链接https://website.com/file.pdf 应用程序解析 URL 并检索 URL 路径:file.pdf...应用程序使用以下命令加入硬编码临时文件夹file.pdf:/data/data/com.vulnerable-app/tempfiles/file.pdf 应用程序从中下载 PDF 文件https:...//website.com/file.pdf并将其保存到/data/data/com.vulnerable-app/temp-files/file.pdf 应用程序为用户打开下载文件 在这种情况下,攻击者可以使用路径遍历重写包内任意文件

47240

WebView完全解读

对于4.4后WebView,我们需要注意下下面这些问题: 多线程 如果你在子线程调用WebView相关方法,而不在UI线程,则可能会出现无法预料错误。...("http://www.oschina.net/app"); // 然后,找到下载地方,这个时候点击下载,就可以调用手机内置浏览器下下载了 //WebView默认没有开启文件下载功能...("http://www.csdn.net/app/"); // 然后,找到下载地方,这个时候点击下载,调用自己写下载程序 //WebView默认没有开启文件下载功能...行为而产生,开发者只能通过配置HTTP响应头影响浏览器行为才能间接地影响到这些缓存数据。...当然,前面也说,我们能这直接操作只是数据部分,而页面缓存是由于浏览器 行为而产生,我们只能通过配置HTTP响应头影响浏览器行为才能间接地影响到 这些缓存数据。

2.9K10

Android webview加载https链接错误或无响应解决

最近做无线WiFi时候,在最后认证成功时候会弹出一个广告页,于是用webview去加载了一下,结果没反应,打印url出来看了一下,发现是https格式,在使用WebView加载https资源文件时...: 我问题并不是出现在这些地方,而是出现了在加载Url时,部分Url使用http而不是https,导致无法加载,功能实现不了。...那么要求后台开发人员把http改成https。就这样,成功了。或者还可以使用一些第三方库来加载也行。...测试: 1、调用高德地图没法显示,前端工程师用了http……那么改为https 2、部分功能没实现,因为后台没有加证书…..那么,全部改回http 补充知识:Android WebView加载网页链接遇到那些坑...修改完成后就可以在webview跳转别的url链接了,就算是解决了第一个问题吧。 2.在webview下载文件无响应 因为本身webview不具备下载功能,所以需要让系统处理或者自定义下载

4.2K10

.NET混合开发解决方案14 WebView2基本身份验证

或WPF窗体 .NET混合开发解决方案13 自定义WebView2上下文菜单   WebView2 应用基本身份验证包括从 HTTP 服务器检索网页一系列身份验证和导航步骤。...WebView2 控件充当主机应用和 HTTP 服务器之间通信中介。 友情提醒:使用基本身份验证时必须使用 HTTPS。 否则,用户名和密码不加密。 您可能需要考虑其他形式身份验证。...基本身份验证 HTTP 标准包括未加密 (用户名和密码) 凭据。 因此,必须使用 HTTPS以确保凭据已加密。...WebView2 控件与 HTTP 服务器通信,请求获取位于指定 URI 文档。 HTTP 服务器答复 WebView2 控件,指出"未经身份验证 (无法获取) URI"。...HTTP 服务器可能会拒绝用户名和密码;它可能会告诉 WebView2 控件"不允许获取该 URI/文档"。 WebView2 控件呈现 HTTP 服务器返回错误页。

1.7K20

修复android下webView控件总结

不过开了FiddlerHTTPS请求后,使用 Chrome访问HTTPS链接时都会提示此网站身份未认证,手机安装证书之后,我设备就必须设定手势密码了,设置之后还不能取消手势必须先删除证书才能恢复以前无手势访问...bug,最后我是在一篇文章猛然发现可能我目前使用代码写有问题(离职人员留下),这篇文章链接在这里: android开发WebView使用(附完整程序) ?...搜索出来答案,我记不得那个网址了,是在stackoverflow上,但是它那个参数有点问题,上面三个函数好像有一个函数参数它写是“ValueCallback”没有后面的,这个其实是有问题...,统一为ValueCallback uploadMsg,只是它后面参数长度问题 问题三:上传附件可能遇到失败情况,上传成功时调用history.go(-1)不起作用 一个选择问题类型页面A...文件上传ajaxFileUpload插件使用是Content-Disposition来实现,关于Content-Disposition详情可以参数这篇文章:正确处理下载文件时HTTP编码问题(

1.5K20

基于 PHP 实现微信小程序 pdf 文件预览服务

知识点 微信小程序预览pdf文件 问题描述 前段时间文库类微信小程序开发遇到个问题,就是要在小程序预览 pdf 文件。微信官方给方案就一个,就是把文档缓存到本地然后用资源管理器打开。...探索过程 方案一:使用小程序 webview,在网页实现预览。体验还是可以,但是遇到问题是 跨域问题无法解决。 方案二:pdf.js。网上很多方案说是用这个,在服务器上写个静态页面进行预览。...我只能自己来整了。 实现思路 将要预览 pdf 文件链接,跟要预览页数传递给后端。后端根据传递参数去解析 pdf 文件,并把需要那一页返回为图片即可。...$file_name); }catch(\Exception $e){ echo '发生错误'; } 注意:pdf 文件路径可以是自己服务器,也可以自己调整。...源码附件已经打包好上传到百度云了,大家自行下载即可~ 链接: https://pan.baidu.com/s/14G-bpVthImHD4eosZUNSFA?

1.9K20

笔记 | Xamarin

安装apk 和 从下载管理器安装 不一样 // 获取下载文件Uri if (Build.VERSION.SdkInt >= Android.OS.BuildVersionCodes.N...private void InstallAPK() { // 获取下载文件Uri Android.Net.Uri downloadFileUri = _downloadManager.GetUriForDownloadedFile...| 大专栏 Android Hybrid 和 WebView 解析_u012014301博客-CSDN博客 WebView中支持加载httphttps混合模式_冰雪世界-CSDN博客 WebView...加载httphttps细节,交互及注意事项 - 简书 android WebView详解,常见漏洞详解和安全源码(下)_Shawn_Dut专栏-CSDN博客_webview漏洞 1.js -> WebView...,放在 result (JsPromptResult) ,所以选择拦截它 5.WebView -> js: webView.LoadUrl 缺点: C# 调用 js ,无法立即获取 js返回值,只能通过

23.8K20

Appium自动化(15) - 针对 webview 进行自动化测试

https://www.cnblogs.com/poloyy/category/1693896.html webview 简介 WebView是android中一个非常重要控件 它作用是用来展示一个...:帮我开启 webview debug 模式就可以啦~ 查看 webview 里面的网页元素 第一种情况:被测试应用webview不依赖app 把webview url 复制出来,在Web 打开...81.0.4044 就是我版本信息,后面还友好跟着版本对应列表,下面有讲到 下载对应版本 webdriver webview 版本对应哪个 webdriver 版本,具体可以看下面这个链接哦 https...\d5' # chromedriver版本匹配地址 # https://github.com/appium/appium/blob/master/docs/en/writing-running-appium...(appium操作作用域) # context-NATIVE_APP时候-只能操作原生控件 # context-WEBVIEW_包名,只能操作web元素 # 查看context名称 print(

2.8K20

如何用 JavaScript 下载文件

简介 我们知道,下载文件是一个非常常见需求,但由于浏览器安全策略限制,我们通常只能通过一个额外页面,访问某个文件 url 来实现下载功能,但是这种用户体验非常不好。...像上面的例子,我们下载到本地文件名就会是 filename.zip 拉,如果不指定的话,它就会是 somefile.zip 这个名字拉!...动态文件 动态生成文件然后返回给客户端也是一个很常见需求,譬如我们有时候需要做导出数据功能,把数据库某些数据导出到 Excel ,然后再返回客户端。...https://developer.mozilla.org/en-US/docs/Web/API/Blob http://stackoverflow.com/questions/19327749/...http://blog.bguiz.com/2014/07/03/file-download-with-http-request-header/ 发布者:全栈程序员栈长,转载请注明出处:https:

1.5K20

基于腾讯x5开源库,提高60%开发效率

加载office资源 关于加载word,pdf,xls等文档文件注意事项:Tbs不支持加载网络文件,需要先把文件下载到本地,然后再加载出来 还有一点要注意,在onDestroy方法调用此方法mTbsReaderView.onStop...load_url=http://www.doubi.com。这个时候点击进去即可进入钓鱼链接地址。 使用建议 APP任何接收外部输入数据地方都是潜在攻击点,过滤检查来自网页参数。...4.0.6 如何处理加载错误(Http、SSL、Resource) 对于WebView加载一个网页过程中所产生错误回调,大致有三种/** * 只有在主页面加载出现错误时,才会回调这个方法。...); } /** * 任何HTTPS请求,遇到SSL错误时都会回调这个方法。...html代码下载WebView后,webkit开始解析网页各个节点,发现有外部样式文件或者外部脚本文件时,会异步发起网络请求下载文件,但如果在这之前也有解析到image节点,那势必也会发起网络请求下载相应图片

3.4K30
领券