【发布时间】:2014-09-22 14:07:47
【问题描述】:
我目前正在使用 Parse.com 编写一个用 PHP 构建的网站来存储该网站的数据。我之前在几个项目中使用过 parse,其中一些功能非常适合。我现在遇到了无法正确检测到登录用户的问题。
<?php
use Parse\ParseClient;
use Parse\ParseObject;
use Parse\ParseQuery;
use Parse\ParseGeoPoint;
use Parse\ParseUser;
ParseClient::initialize('Omitted', 'Omitted', 'Omitted');
(... truncated)
function get_user(){
//BROKEN.
//TODO: Fix
$currentUser = ParseUser::getCurrentUser();
if ($currentUser) {
return $currentUser->getObjectId();
} else {
return false;
}
}
(... truncated)
?>
此代码仅对 parse 给出的 PHP 示例中的代码进行了少量修改,但无论“登录”状态如何,似乎都返回 false
调用会话开始以确保会话正在运行,调用print_r($_SESSION) 输出包含相关用户对象的转储。
我知道我可能错过了一些愚蠢的事情,但任何正确方向的指示将不胜感激。
【问题讨论】:
-
听起来 currentUser 还没有登录。你是调用适当的注册还是登录?
-
是的,调用 signUp 或 logIn 都会成功返回,在相关的位置创建一个用户,但登录似乎不会持续存在。如上所述,转储 $_SESSION "Superglobal" 包含登录用户的详细信息,但 ParseUser::getCurrentUser() 无论如何都会返回 false。让我很困惑!
标签: php parse-platform