跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 后端返回二进制文件流,前端用 blob 接收,接着 chrome 使用外部第三方程序打开,这个能做到吗?
未分類
10 11 月 2020

后端返回二进制文件流,前端用 blob 接收,接着 chrome 使用外部第三方程序打开,这个能做到吗?

后端返回二进制文件流,前端用 blob 接收,接着 chrome 使用外部第三方程序打开,这个能做到吗?

資深大佬 : darknoll 8

因为该文件格式是公司自定义的文件格式,只有公司自己的软件才可以打开。 能实现这个功能吗?

大佬有話說 (14)

  • 資深大佬 : lamada

    pc 上不清楚,手机上 url schema 可以唤起第三方 app 。不过你这 blob 也得先保存到本地文件吧。

  • 資深大佬 : suke971219

    @lamada #1 把 url 拼好给软件不就行了,下载和解码在软件做

  • 資深大佬 : jiangnan01

    应该是可以的,参考磁力链唤起迅雷

  • 資深大佬 : lamada

    @suke971219 老哥说的在理,交给软件内处理就好了。我猜 lz 的意思是软件不支持自己下载

  • 資深大佬 : takemeaway

    可以的。 前端接收后的需要是完整文件。
    然后通过浏览器唤起自己的软件去打开。

  • 資深大佬 : wmhx

    腾讯会议, 莫某视频, 不都是这样的吗

  • 資深大佬 : also24

    需要多一步,blob 要先存储在本地。
    实际流程,类似 mega 网盘的下载过程。

  • 主 資深大佬 : darknoll

    @suke971219 可能你这个是唯一的方法了

  • 主 資深大佬 : darknoll

    @also24 前端把文件存储在本地,这就是个大问题,用户体验特别不好。首先存储的路径如果不想自己选,那只能存在浏览器默认下载路径,如果每次都手动选下载目录,体验更差。

  • 資深大佬 : also24

    @darknoll #9
    我举 mega 的例子,其实就是想说我觉得这样体验很一般 hhhh

    我还是比较赞成直接传递 URL 的方案。

  • 資深大佬 : cheese

    不太行,还是参考豆瓣,知乎一类的,网页调用 app 方案吧

  • 資深大佬 : xyjincan

    chrome 最新文件 api 支持文件和文件夹修改了

  • 資深大佬 : KuroNekoFan

    通过 url scheme 唤起第三方 app 问题不大,问题是如何传递文件路径。理论上浏览器和你家 APP 应该是隔离的,不过用常见的 c:/$USER/Downloads 来猜测一下文件路径,如果没有文件再让用户自选感觉是可行的方案

  • 資深大佬 : edk24

    你可以参考迅雷 /旋风链接的形式, 但是在浏览器中, 除非奇葩的手段, 是不能用 js 往用户电脑上写文件的, 因为这会使得用户电脑很不安全, 比如我替换难道某些系统文件, 加 hook 给你写入病毒等

    所以,我个人推荐的方法是, 内部软件和后端上做个约定, 一串类似迅雷的链接唤起来, 在内部软件中下载 blob.

    如果 blob 小, 可以考虑用`协议://base64`替代, 但你要知道, 这种类型的 url 长度是有限的

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具