【问题标题】:PWA - Web Share Target "property 'action' ignored, should be within scope of manifest"PWA - Web 共享目标\“属性\'操作\'被忽略,应在清单范围内\”
【发布时间】:2022-08-07 18:49:45
【问题描述】:

我的 Web 共享目标不起作用,我收到错误消息\"属性\'action\'被忽略,应该在清单范围内\"当我的 PWA 安装时。

在 manifest.json 我配置了 share_target 如下:

 \"share_target\": {
   \"action\": \"/_share-target\",
   \"enctype\": \"multipart/form-data\",
   \"method\": \"POST\",
   \"params\": {
     \"files\": [
       ...
     ]
   }
 }

    标签: progressive-web-apps service-worker web-share mainfest web-share-target


    【解决方案1】:

    问题是我的服务人员安装了范围'/myapp/src/'

     navigator.serviceWorker
      .register("service-worker.js", { scope: '/myapp/src/'})
    

    这会产生一个绝对 url https://myusername.github.io/myapp/src/ 服务工作者运行的地方。

    但是网络共享目标指向https://myusername.github.io/_share-target,因为前导斜杠,如错误消息所述,不在服务工作者的范围内。

    因此解决方案是通过从共享目标操作属性中删除斜线来调整 manifest.json。

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

    或在 service worker 范围内定义路径:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-04
      相关资源
      最近更新 更多