我已经为IOS/Android创建了一个用于移动应用程序的REST API。我试图创建一个注册/登录系统,其中用户使用他的手机号码登录,因此在注册时,我必须验证他/她的号码。因此,当用户注册并填写他/她的信息时,移动开发人员会将用户信息发送到API,即(姓名、国家、城市、语言、phone_number)。在后台,我将所有的信息存储在一个会话中,并在用户的手机号码上发送一个验证码,验证码也存储在会话中。当用户再次输入他的手机号码时,移动应用程序发送一个只有一个参数的请求,即(verification_code)。我将用户发送的代码与会话中的代码进行匹配,如果匹配,则从会话中获取所有数据,并使用该信息创建一个新用户。
问题是当ios开发者发送请求时,我可以得到他的会话数据,而当android开发者发送请求时,他的会话总是空的。
我还测试了邮递员的API,没有单一的问题,只有当请求来自android设备时才会出现问题。android设备不做会话管理吗?
我正在用laravel 5.2开发API,
请帮我解决这个问题!很抱歉我的英语不好,因为它不是我的母语..
发布于 2016-11-11 15:40:40
这是我的案例:我遇到了会话丢失的问题,我发现问题出在dd(...)上。如果你只是用var_dump(...)来转储这个变量,那么一切都很好。通常情况下,如果我运行die(...),$_SESSION不会丢失其内容。为什么Laravel需要运行$app->terminate()或$kernel->terminate()来持久化每个请求的会话?
正如我注意到的,Auth::user()是跨请求持久化的。
简而言之,不要在代码中使用dd()或()
https://stackoverflow.com/questions/38851524
复制相似问题