我可以在 Safari 上使用 Web Share API 共享文件吗
Posted
技术标签:
【中文标题】我可以在 Safari 上使用 Web Share API 共享文件吗【英文标题】:Can I share a file with Web Share API on Safari 【发布时间】:2020-06-03 17:57:10 【问题描述】:我正在尝试使用以下代码与 Web Share API Level 2 共享文件:
var file = new File(["foo"], "foo.txt",
type: "text/plain",
);
window.navigator.share(
text: "Share text",
title: "Share title",
files: [file]
)
很遗憾,文件未与 iPhone 共享,但在 android 上已成功共享。
有什么解决办法吗?
提前致谢。
【问题讨论】:
忘了在 ios 上分享分享,但只有text
分享。文件已跳过...
谁能确认 iOS 14 是否允许文件?不仅仅是文字
确认 iOS 14.4 仍然不共享文件。 (在 Safari 和 Chrome 上都试过。经过验证的同一网站可在 Android 上运行)
感谢@OdedBenDov 更新此内容!
嗨。我现在可以进行文件共享。但在 Whatsapp + iOS 上,它仅在文本和标题内容为空时才有效(仅发送文件)。
【参考方案1】:
我的文件共享工作正常。但在 Whatsapp + iOS 上,它仅在文本和标题内容为空时才有效(仅发送文件)。
let data = ;
if (files.length > 0)
data.files = files;
if (title !== '')
data.title = title;
if (text !== '')
data.text = text;
if (url !== '')
data.url = url;
error.textContent = '';
navigator.share(data)
.then(() =>
)
.catch((err) =>
console.log('Unsuccessful share');
error.textContent = 'Share failed: ' + err.message;
);
https://jsfiddle.net/2q36fhb9/1/
【讨论】:
对不起,这不是我需要的,我必须分享一切 我在 Iphone 13、15.3 IOS 上进行了测试。文件共享也适用于 WhatsApp,Telegram。我认为这提供了一些用例以上是关于我可以在 Safari 上使用 Web Share API 共享文件吗的主要内容,如果未能解决你的问题,请参考以下文章
navigator.share 文件在 iOS 14 Safari 上不起作用
Web Share API 在 iOS 上不起作用:Angular
Safari 桌面 Web 共享 API 中缺少“复制”选项?
为啥我的 Web 应用在 iOS(Chrome 和 Safari)上滚动超级慢,但在所有其他平台上都可以?