后端vscode插件已经成功连接 VPC与本地服务,微信开发者工具更改了相对应的“X-WX-SERVICE”仍然无法调用本地服务,
微信开发者工具版本Nightly 1.06.2409182
提示信息:
微信云托管调用失败Error: cloud.callContainer:fail -405005 exceed max poll retry. (callId: 1726908350157-0.8063578846727826) (trace: 16:45:50 start->16:45:56 normal poll->16:46:2 normal poll->16:46:8 normal poll->16:46:14 normal poll->16:46:20 normal poll->16:46:26 normal poll->16:46:32 normal poll->16:46:38 normal poll->16:46:44 normal poll->16:46:50 normal poll->16:46:56 normal poll->16:47:2 too many polls, abort)
为何连接不了导致超时?
wx.cloud.callContainer
难道这个不能在本地调用?我见文档里可以啊
https://developers.weixin.qq.com/miniprogram/dev/wxcloudrun/src/guide/debug/
从 v1.0.12 开始,在 VSCode 插件中启动的容器支持在微信开发者工具中访问和本地调试,小程序模拟器中的 callContainer
请求会请求到本地,此功能需要更新开发者工具到 Nightly 版本,并确保 VSCode 插件版本已更新到最新版。
https://www.bilibili.com/video/BV1w44y1T7dk
// 小程序调用,获取微信 Open ID app.get("/api/wx_openid", async (req, res) => { if (req.headers["x-wx-source"]) { res.send(req.headers["x-wx-openid"]); } });
测试发现,云托管express框架模板中这段代码里对x-wx-source进行了有无判断,但并没有当不存在时该返回什么,而本地调试中获取的headers中没有该属性,因此迟迟得不到结果,就超时失败了