目标

当客户端是APP时,调用服务端接口,必须携带以下的请求头,用于支撑AppToken方式的正常工作。

必须携带的请求头列表

请求头的key 说明 时机
AppToken 是一个UUID 用于登记认证,请看 AppToken登录认证设计 调用“需要登录后才能访问”的接口时,要携带 AppToken
TerminalType app

用于识别终端类型,

使用uni-app开发的(app\小程\H5)登录认证使用使用Apptoken,

之前开的wap微信商城登录认证使用Cookie Session,

所以当 TerminalType值为app时,说明 终端类型是APP, 服务端要配合使用AppToken方案。

每一次请求都要带 TerminalType。

AppTokenUtils工具类 就是使用 TerminalType来区分的。


当跨域时,请求头白名单

服务端为了支持跨域,使用了CorsFilter,解决了跨域问题。但它也对请求头中可携带的参数做出了限制。

CorsFilter支持以下请求头:Keep-Alive,User-Agent,X-Requested-With,Content-Type,Origin,Accept,Accept-Language,Accept-Encoding,AppToken,TerminalType

原理请看 使用CorsFilter来实现CORS跨域的支持 ,如果想添加更多的请求头,请修改CorsFilter类。