1、proxy设置代理,其地址匹配是根据正则匹配,可以看到文中开始设置了如下三个代理,且顺序如下:
- "/api"
- "/apipc"
- "/huangyi"
2、对应请求的三个接口如下:
- "/api/musichall/fcgi-bin/fcg_yqqhomepagerecommend.fcg"
- "/apipc/cgi-bin/musicu.fcg"
- "/huangyi/music/api/getDiscList"
发现三个接口中都包含"/api",所以访问时正则匹配都会转到第一个的"/api"代理,这样就导致后面两个接口访问不成功;
3、当将代理改成如下,表示匹配以如下开头的接口:
- "^/api"
- "^/apipc"
- "^/huangyi"
结果: 发现三个接口中有两个都以"/api开头",所以当访问"/apipc/cgi-bin/musicu.fcg"这个接口时正则匹配都会转到第一个的"^/api"代理,这样就导致该接口访问不成功;
- 当将"^/apipc/"代理改成别的名字"^/pc",这样三个接口都对应匹配到个子接口,结果请求接口都成功;