小程序所有请求head reffer 格式固定,如何校验是否是小程序发出的请求,并过滤拦截???
https://mp.weixin.qq.com/debug/wxadoc/dev/api/api-network.html
head reffer 格式如下
https://servicewechat.com/{appid}/{version}/page-frame.html
其中 {appid}
为小程序的 appid,
{version}
为小程序的版本号,版本号为 0
表示为开发版、体验版以及审核版本,版本号为 devtools
表示为开发者工具,其余为正式版本。
java 校验
public boolean verifyRequestReferer(String referer){
String appappId=PropKit.get("appappId");
String regEx = "^https://servicewechat.com/"+appappId+"/(\\d+(\\.\\d+)?|devtools)/page-frame.html$";
Pattern pattern = Pattern.compile(regEx);
Matcher matcher = pattern.matcher(referer);
return matcher.matches();
}