公共接口如何区分不同应用?

在做参数防篡改的时候,请求进来之后,需要在服务端根据用户token获取salt,来进行签名。如果这个接口是给前台和后台公用的,那么拿到token之后,怎么判断从前台用户表还是后台用户表里拿salt呢?或者有什么其他解决方案?

阅读 2.5k
4 个回答

token一般是多个业务参数按照一定形式加密形成的,你可以多添加一个参数来区分前端还是后端

Token 中或者其他参数中携带一下相关信息。

比如可以再有一个 AccessKeyAppKey 之类的参数,指明是前台还是后台。

再比如 Token 是 JWT,本身就带信息;甚至简单粗暴的 1 开头的是前台、2 开头的是后台,凑从生成 Token 的时候就确定下来这种格式。

方案不唯一,结合你自己的业务需求来做。

要求前端接口请求时候加上对应客户端请求头。
例如后台客户端请求,加上请求头 X-Client: admin-web
例如前台客户端请求,加上请求头 X-Client: mobile-web

如果无请求头自行看情况处理。可以默认请求头或者认为是非法请求

我是通过URL来判断的。比如说访问 /admin 前缀的url,那么我就用admin的用户表进行解析,其他默认用前台用户表进行解析。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏