我有一个 Rails 项目,其 API 被两个不同但相关的应用程序使用。
一个应用程序(Parent)使用 Unity 制作,而另一个应用程序(Child)使用原生应用程序(iOS 和 Android)。
如果出现错误响应。
Unity 应用需要 2xx 系列状态码,如果有任何其他状态码,他们会将其读取为成功案例。
虽然原生(iOS 和 Android)应用需要 4xx 系列状态码,但如果有任何其他状态码,它们会将其视为成功案例。
有什么方法可以让我从请求中知道哪个应用发送了请求?
或任何其他解决方案来处理这个问题?
Best Answer-推荐答案 strong>
Is there any way that from request I can know that which app sent
request?
是的。几种方式。
1。使用表单发送发出请求的设备,然后从您的铁路服务器访问。
WWWForm form = new WWWForm();
//From Unity
form.AddField("App", "Unity");
或者
//From Native
form.AddField("App", "Native");
然后发送:
UnityWebRequest uwr = UnityWebRequest.Post(url, form);
yield return uwr.SendWebRequest();
2。使用自定义 header 发送发出请求的设备,然后从您的铁路服务器访问。
//From Unity
UnityWebRequest.SetRequestHeader("App", "Unity");
或者
//From Native
UnityWebRequest.SetRequestHeader("App", "Native");
您需要做的就是在 rails 上访问这两个“应用程序”。
3.使用json或xml存储请求来自哪个设备,从服务器访问this。
这里使用的 API 适用于 Unity,但您也可以在 iOS 和 Android 上为具有 Object-C 和 Java API 的 native 应用程序执行类似的操作。还是一样的。
关于android - 在 Rest 通话中检测设备/应用程序,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/49403642/
|