在开发网页时,他们说您应该使用POST进行“破坏性”操作,并获取只检索信息的操作。
应用程序也是如此吗?使用GET将来自iPhone应用程序的请求通过HTTPS发送到Web服务器以执行以下操作是完全不可能的:
(这些操作实际上都不是“破坏性的”,没有任何服务器功能删除任何东西,尽管有些更新了高分之类的东西,这可能被认为是破坏性的,因为它们覆盖了一些东西。)
我有备份,以防数据丢失,但不管这件事如何,我都会问。
发布于 2013-08-27 09:14:54
为了增加Thomas的回答,GET请求必须由代理服务器缓存,所以您不能100%地保证GET请求会到达目标服务器,而不会从代理获得响应。是的,您可以添加标题来指定不存在缓存,但并不是每个代理都遵守规则。使用最佳实践并发布更新不是更容易吗?我不明白你为什么要用GET (除了懒惰)。通过使用POST,您将通知所有内容(browser / HTTP提供者、代理和服务器),请求进行了“破坏性”更改,并且应该确保您的请求是适当的,而不需要管理任何请求头。
此外,POST请求不太可能记录参数,因此GET中查询字符串上的任何敏感参数都不可能存储在应用程序控制之外,例如在POST主体中生成代理或服务器日志(例如令牌)。同样,这不是保证,但通过使用适当的请求方法,您将提示请求的意图。
发布于 2014-10-30 16:35:20
除了Thomas答案之外,您应该始终记住让应用程序检查ssl握手中收到的证书。
作为一名移动开发人员,您的工作是正确验证证书是否有效(如果您的服务器使用的是自签名证书,请确保将其保存在应用程序中),否则您的用户将很容易使用MITM攻击,并且在这些情况下往往会发生一些不好的事情。用户喜欢免费无线上网..。
https://security.stackexchange.com/questions/41233
复制相似问题