我的 Web 共享目标不起作用,安装 PWA 时出现错误 “属性‘操作’被忽略,应该在清单范围内”。
在manifest.json中,我配置了share_target,如下所示:
"share_target": {
"action": "/_share-target",
"enctype": "multipart/form-data",
"method": "POST",
"params": {
"files": [
...
]
}
}
'/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",
...
}