初步怀疑是web-view环境问题,因为内嵌的网页在浏览器环境直接登录是可以拿到请求的数据的。研究了一下小程序的web-view容器加载机制,模块导入先于登录请求数据,需要使用的一个变量在模块导入阶段初始化,此时还没有登录数据,无法正确初始化,即便登录也不能重新赋值,只有重新进入小程序,此时会再次加载import,此时存储的有登录信息了,就正常了。H5环境,登录后还会触发一次import,所以和web-view环境不同。
H5环境

小程序web-view环境

结论:不使用模块级变量,完全绕开模块加载机制的影响。