gpt4 book ai didi

android - 区分http手机浏览器和手机app请求

转载 作者:可可西里 更新时间:2023-11-01 16:56:12 25 4
gpt4 key购买 nike

我读了一些像 this 这样的帖子, this还有一些没有回应。不过我好像找到了here IOS设备的解决方案。

我需要拒绝来自任何设备的任何应用程序的任何 http 请求,并且只处理来自网络浏览器的请求,所以主要问题是:

是否有明确的方法来判断 HTTP 请求是从移动应用程序还是从网络浏览器发出的?

谢谢

示例:我收到所有从手机/平板电脑开始的 http 请求(我正在开发 wifi 热点背后的应用程序),所以我处理来自 Facebook 应用程序、Whatsup 应用程序和浏览器的请求。我必须拒绝来自 Facebook 和 Whatsup 的请求,只处理来自浏览器的请求。 Apps 用户代理似乎与 native 设备浏览器相同。

最佳答案

你只能做一件事。从应用程序端设置自定义用户代理。

您可以在 web 服务调用请求期间在 android 和 iphone 中设置自定义用户代理。

Android 版

DefaultHttpClient httpclient = new DefaultHttpClient();
httpclient.getParams().setParameter(CoreProtocolPNames.USER_AGENT, "android");

iPhone 版

NSMutableURLRequest *urlRequest = [[NSMutableURLRequest alloc] 
initWithURL:[NSURL URLWithString:[yourURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]];
NSString *userAgent = "iphone";
[urlRequest setValue:userAgent forHTTPHeaderField:@"User-Agent"];

如果用户代理是“android”或“iphone”来自应用程序,则检查请求 header ,否则来自浏览器。

关于android - 区分http手机浏览器和手机app请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25156223/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com