ios - 如何验证来自 iOS 应用程序的 http 请求?

标签 ios http authentication

我有一个通过 https 与服务器通信的 iOS 应用。

是否可以对应用程序进行身份验证,以便服务器只响应来自该应用程序的请求?换句话说,它不会响应来自浏览器/curl/另一个应用程序/等的 http 请求?

我对验证用户不感兴趣 - 只是确保只有我的应用可以与服务器通信。

我的想法:

- 服务器和应用程序上的共享 secret 。但是任何人都可以查看应用程序包内部以提取 secret 。

-使用推送通知。应用程序联系服务器,并告诉服务器它的推送通知 token 。服务器发送到达应用程序的推送通知。没有其他任何东西可以收到通知,所以在其中嵌入一个共享 secret ,应用程序可以从那时起使用它。但是推送通知可能会延迟发送,或者根本不发送。许多用户不想启用它们。

显然,Apple 会对设备进行身份验证,因此它知道将推送通知发送到哪里。但是有什么方法可以 Hook 吗?

最佳答案

您是否考虑过使用 iOS 设备的 MAC 地址?我在一个应用程序中使用它,该应用程序登录需要将设备识别为终端的服务器,并使用它为该终端创建 session 。

关于ios - 如何验证来自 iOS 应用程序的 http 请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7680435/

相关文章:

iphone - 奇怪的情况给出错误 : "The application bundle does not contain a valid identifier."

HTTP 状态代码 0 - 错误域=NSURLErrorDomain?

java - 尝试从服务帐户将文件 POST 到 Google Cloud Storage 时收到 403(禁止)

swift - 如何在Xcode环境中为Swift添加身份验证

objective-c - 从由特殊字符分隔的 NSString 中提取 2 个字符串

ios - 删除导航栏中的后退箭头,保留后退按钮标题

c# - Monotouch 自动增量内部版本号及版本号

http - 如何通过telnet发送POST请求

ios - 用户先前注销后使用无效数据错误地登录

http - 有什么方法可以防止在另一台计算机上使用 cookie?