一段调试手机webview调用H5页面的过程

场景:最近使用vue开发了一个H5页面,入口为 url/index.html。手机端使用webview调用该页面。

问题:进入该页面后,数据无法显示。

分析:

1、可以进入该页面,说明配置没有问题。

2、数据没有显示,应该是http请求过程中出现了问题。

问题可能的来源:

1、手机端没有将token传给H5页面(因为http请求后台要验证会话)。

2、后台没有根据token成功恢复会话。

3、存在跨域问题,需要后台支持跨域。

4、本身就没有数据。

验证方法:

1、由于手机端不能看到console.log中的内容,于是将手机端传过来的查询字符串打印在body中,在其中可以看到token的值,问题来源1被排除。

2、在数据库中拿到token的值,在游览器端不登录系统,直接输入url/index.html?token=tokenValue,结果可以正常访问,排除问题来源2

3、在java代码增加对跨域的支持,在过滤器中增加对responseCORS处理,结果依然没有数据,排除了问题来源3(此时没有直接排除,以为对response的处理有问题)

4、使用fiddler录制请求,发现得到的结果确实是空。

经验:

走了一圈回到原点,欲哭无泪,但是也get到了一些东西。测试在PC端使用管理员权限登录,而在手机端使用网格员权限登录,而网格员的权限是没有配置菜单栏权限的,这是问题的主要所在(配置后即可显示)。

学到了什么:

1、对token会话的理解更深。

2、增强了对跨域的理解。

3、学会了fiddler的使用。

你可能感兴趣的:(一段调试手机webview调用H5页面的过程)