开发者在完成基本接入后打开 H5 应用失败,容器页面显示错误信息 “NoSuchKey. The specified key does not existed…”,如下图:
错误样例:
<Error>
<Code>NoSuchKey</Code>
<Message>The specified key does not exist.</Message>
<RequestId>5F4DFBE4F1AC943937FBCA6D</RequestId>
<HostId>mcube-prod.oss-cn-hangzhou.aliyuncs.com</HostId>
<Key>A5F87CB301605-beimo/20200024/1.0.0.0_all/nebula/fallback/www/index2.html</Key>
</Error>
这类问题的直接原因是 mPaaS Nebula 容器直接访问的地址指向了一个 MDS 服务器上不存在的文件。从这个原因出发,触发问题的流程一般为:客户端试图访问一个离线包中不存在的资源,客户端本地未命中,线上 fallback 地址也未命中,MDS 服务器返回该错误。
根据原因分析,排查方向如下:
这里有三类情况:
主动打开 H5 App 是,传入的 URL 参数是否正确。
根据 H5 App 页面跳转的逻辑确认所打开的页面地址是否正确,包括 pushWindow()
、 location.href
等跳转形式的目标 URL 设置是否正确。
控制台下载 .amr
文件,修改后缀名为 .zip
后解压,解压文件夹中的 .tar
文件,即可看到离线包中的资源文件。
然后确认要打开的页面资源文件是否包含在这个文件夹内。
确认当前 App 的环境配置和目前离线包的环境是否一致。
查看 App 工程中的 meta.config
中的 App ID:
查看目标 H5 App 离线包 所在控制台上的 App ID:
在文档使用中是否遇到以下问题
更多建议
匿名提交