api服务托管在云引擎中,使用了express,开启配有的https后,在微信回调域名配置中始终返回404,但是可以手动访问。 关闭https后就可以正常配置。
微信那边填的是否是 HTTPS 地址?
是的子亭,而且是https协议下的leanapp分配的二级域名,回调域名验证直接返回404,注释掉开启https代码后使用http协议直接通过。
发自我的iPad
能否截个图?我还是怀疑微信那边并没有用 https 访问。
如果微信没有用 https,而且你开了 HttpsRedirect 的话,微信回调时应该会收到 302 重定向(而不是 404);这时如果你关掉 HttpsRedirect 的话,自然就正常了。
很奇怪的是,如果如图1设置成https就会返回404,但是改成http就可以通过。当我在代码部分启用https的时候,仍旧http可以通过,https通不过。
代码部分:
浏览器可以访问到该页面
我们现在认为是微信那边的回调不支持 SNI(多个域名共用一个 IP 来提供 HTTPS 时必须使用的一项技术),但也没有非常充分的证据。目前最简单的办法就是对支付宝的回调使用 HTTP,后续我们会做一些改动,让 leanapp.cn 的二级域名支持非 SNI 的请求。
那如果需要https协议,该如何处理呢?
如果是对方不支持 SNI,那暂时没什么办法,只能先用 HTTP
好的