charles之web和H5map数据的方法


一、maplocal不成功的原因

map前response的header:

map后response的header:

对比maplocal前后的接口请求会发现,map后的接口response的header,比map前response的header少了很多参数;其中比较重要的有:

Access-Control-Allow-Headers:用于一个预检请求指示哪个HTTP标头将通过提供Access-Control-Expose-Headers使实际的请求时。(不懂。。。。)

Access-Control-Allow-Credentials:允许跨域;(https://www.jianshu.com/p/ea485e5665b3)

Access-Control-Allow-Origin:跨域,即 服务端response.header,需要与request.header的orgin相同,否则校验不同;(https://www.jianshu.com/p/89a377c52b48)

二、解决办法:通过charles的rewrite方法把response的header的缺少的字段添加上

1、Tools--Rewrite–Add:  添加新的rewrie配置:

2、添加所有map的接口

3、add rules — resoponse中add header

4、添加另外两个参数

5、保存并勾选后,再次进行map查看,添加并map成

三、备注

1、Rewrite的添加必须勾选;

2、添加rule时,应注意是选择response,而不是request;

3、charles需要勾选tools-windowsproxy选项