用户可以通过网络或 native 应用程序(iOS 或 Android)登录我的服务。用于身份验证的后端端点 (Java Spring) 对于所有端点都是相同的,但我需要区分 REST(POST 和 GET)请求是来自 Web 浏览器还是来自 native 移动应用程序,因为我想实现不同的 session 策略.
我怎样才能做到这一点?
最佳答案
因此您需要对所有人进行身份验证,因为 IOS、Android 和 Web 是与服务器通信数据的前端。 因此,您需要要求设备操作系统在 header 中前端处理人员,以便您可以知道 api 调用来自何处。每当他们向服务器发送 api 时,他们都会在 header 中发送参数。
// android send data
headers.put("device-os", "android");
或
// IOS send data
headers.put("device-os", "ios");
或
// web send data
headers.put("device-os", "web");
注意:- 以上代码特定于 Android。
关于java - 区分对 Java Spring 后端的 Web 和 native 应用程序请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48881191/