visual-studio-code - 浏览器中的 vscode 复制/粘贴错误:“剪贴板 API 已被阻止,因为已将功能策略应用于当前文档。”
问题描述
我正在浏览器中试用 VS Code(类似于 Jupyter Labs,它可能被称为“vscode-server”?)但是当我尝试复制/粘贴任何内容时出现错误:
由于对当前文档应用了功能策略,剪贴板 API 已被阻止。
重现步骤:
- 在浏览器中打开 VS Code 会话。
- 在终端中打开文本编辑器。
- 尝试粘贴一些东西。
- 一个弹出窗口显示一个指向 Chromium 页面的链接,该页面有关 iframe 中的受信任内容。
如何在浏览器中启用 VS Code 中的复制/粘贴?
如果有用的话,这里是来自“Help->About”的版本信息:
Code - OSS
Version: 1.44.2
Commit: fd36a99a4c78669970ebc4eb05768293b657716f
Date: 2020-04-29T20:40:08.161Z (5 mos ago)
Browser: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36
解决方案
我想知道是不是这个问题:Clipboard API doesn't work on Codespaces (using Safari)。
“写入剪贴板的请求必须在用户手势期间触发。在用户手势范围之外(例如“单击”或“触摸”事件处理程序)调用 clipboard.write 或 clipboard.writeText 将导致立即拒绝 API 调用返回的承诺。”
刚刚在 PR: Workaround Safari clipboard.writeText behavior中修复。
可在 Insidrs Build 中进行测试,可能会在 2021 年 2 月上旬登陆 Stable v1.64。
推荐阅读
- ruby-on-rails - Rails前端尝试将自动生成的数据保存到没有表单的数据库中
- react-native - 使用 useState 钩子,但是 setter 函数在运行时未定义
- java - 通过代理调用方法,该代理使用内部带有 Transactional 注释的另一个方法,是否会为后一种方法创建事务?
- php - PHP - 多个(很多)if(isset)检查 - 有没有捷径
- javascript - js 我可以用 FileReader 读取文件的一部分吗?
- bash - 在 bash 中运行存储为字符串的 PSQL 查询
- graph - Microsoft Graph API - 列出所有具有 OneDrive 许可证的用户
- vue.js - 如何在 Vue3 中正确获取组件的 this.$el?
- javascript - 为什么我在由 php 回显的按钮中的 onclick 函数不起作用?
- python - 为什么字典的键进入项目内部?