PWA - Web 共享目标“属性‘操作’被忽略,应在清单范围内”

问题描述 投票:0回答:2

我的 Web 共享目标不起作用,安装 PWA 时出现错误 “属性‘操作’被忽略,应该在清单范围内”。

enter image description here

在manifest.json中,我配置了share_target,如下所示:

"share_target": { "action": "/_share-target", "enctype": "multipart/form-data", "method": "POST", "params": { "files": [ ... ] } }
    
progressive-web-apps service-worker manifest web-share web-share-target
2个回答
1
投票
问题是我的 Service Worker 安装了范围

'/myapp/src/'

navigator.serviceWorker .register("service-worker.js", { scope: '/myapp/src/'})
这会产生服务工作线程运行的绝对 URL 

https://myusername.github.io/myapp/src/但由于前导斜杠,网络共享目标指向

https://myusername.github.io/_share-target

,正如错误消息所述,它不在服务工作人员的范围内。 因此,解决方案是通过从共享目标操作属性中删除斜线来调整 mainfest.json。

"share_target": { "action": "_share-target", ... }

或定义 Service Worker 范围内的路径:

"share_target": { "action": "/myapp/src/_share-target", ... }



0
投票

https://developer.mozilla.org/en-US/docs/Web/Manifest/scope

{ .. "scope": "/", .. }

然后建议使用应用程序在我的 Android 设备上共享内容!但它不适用于 iOS(目前不支持该功能)...

© www.soinside.com 2019 - 2024. All rights reserved.