我的服务器上有一个php脚本。我开始使用Postman for Chrome进行测试。它完美无缺。但是,如果我通过AFNetworking调用相同的URL,则不会维护PHP中的SESSION数组。
另一个有趣的问题是,如果我使用MAMP从localhost运行脚本,那么SESSION数组也会在iOS应用程序中维护。
可能是什么问题?
更新: 我正在使用 HostGator ,我发现session_id()在从iOS应用程序调用时不断变化,但不会从Postman调用。它也没有在localhost上改变。
更新2:
session_id()仅在应用程序终止时保持更改,然后我在viewDidLoad上再次登录,而不会在应用程序终止之前退出。
查看以下解决方案!
答案 0 :(得分:1)
是的,这肯定会发生。通常,浏览器负责处理会话数据。调用边缘的iOS应用程序需要从http标头读取cookie数据以获取会话并手动处理。因此,从响应中读取标头,存储会话cookie并在发出后续请求时添加它们。否则他们会被剥夺。
由于我是网络开发人员,因此我不知道如何在您的iOS应用中执行此操作。对不起。
答案 1 :(得分:0)
Soo ..事实证明,问题与我的服务器配置无关。
我正在从应用程序向服务器发出多个请求,并且一些请求比登录请求更快地返回,即使这是先发出的。这导致登录请求与其他请求具有不同的session_id()。
这只是在真实服务器上而不是在localhost上显示的原因是因为localhost足够快以首先处理登录请求。
虽然Postman的工作原因是因为Postman,我一次只能提出一个请求。
对不起,如果这让任何人头疼......