解析服务器 user.getSessionToken() 未定义
Parse-server user.getSessionToken() not defined
Parse.User.getSessionToken
上的文档指出:
Returns the session token for this user, if the user has been logged in, or if it is the result of a query with the master key. Otherwise, returns undefined.
我正在使用 JS SDK。当我使用主密钥创建并保存新用户时,我可以使用 user.getSessionToken
在回调中获取会话令牌。效果不错。
当我使用主密钥查询用户时,返回了该用户,我尝试以相同的方式获取会话令牌,但它是未定义的。
我已确认该用户存在有效会话,但结果始终相同。
我正在尝试登录查询的用户。
become()
函数需要会话令牌。
如有任何帮助,我们将不胜感激。
谢谢!
对我来说,如果您以一个用户身份登录并使用 masterKey 查询另一个用户,则返回的用户将没有会话令牌,即使他们当前已登录并具有有效会话也是如此。
为什么需要 "become" 那个用户?
为什么不直接使用主密钥而不是 "becoming" 那个用户来做 query/update 你需要做的事情呢?
所以事实证明,创建和保存新用户会生成一个会话令牌,一个人可以在保存后的块中使用 getSessionToken()
来获取该令牌:
//create newUser and save username/password
return newUser.save(null, {userMasterKey:true})
.then( function(user) {
var token = user.getSessionToken();
//use that token
});
查询用户并尝试获取令牌但是行不通:
userQuery.first({useMasterKey:true})
.then(function(user) {
if(user)
{
var token = user.getSessionToken();
//token is null
}
我正在进行 SSO 登录并使用来自 SAML 服务器的令牌作为 Parse 用户名。在我的移动客户端用户登录到 SSO 服务器并向客户端提供解析会话令牌后,我需要登录到 Parse。
对于现有的解析用户,解决方案是查询用户,使用主密钥将密码更改为随机的超级密码,使用新密码登录,然后获取会话令牌并将其发送沿着。
希望这对某人有所帮助。
Parse.User.getSessionToken
上的文档指出:
Returns the session token for this user, if the user has been logged in, or if it is the result of a query with the master key. Otherwise, returns undefined.
我正在使用 JS SDK。当我使用主密钥创建并保存新用户时,我可以使用 user.getSessionToken
在回调中获取会话令牌。效果不错。
当我使用主密钥查询用户时,返回了该用户,我尝试以相同的方式获取会话令牌,但它是未定义的。
我已确认该用户存在有效会话,但结果始终相同。
我正在尝试登录查询的用户。
become()
函数需要会话令牌。
如有任何帮助,我们将不胜感激。
谢谢!
对我来说,如果您以一个用户身份登录并使用 masterKey 查询另一个用户,则返回的用户将没有会话令牌,即使他们当前已登录并具有有效会话也是如此。
为什么需要 "become" 那个用户?
为什么不直接使用主密钥而不是 "becoming" 那个用户来做 query/update 你需要做的事情呢?
所以事实证明,创建和保存新用户会生成一个会话令牌,一个人可以在保存后的块中使用 getSessionToken()
来获取该令牌:
//create newUser and save username/password
return newUser.save(null, {userMasterKey:true})
.then( function(user) {
var token = user.getSessionToken();
//use that token
});
查询用户并尝试获取令牌但是行不通:
userQuery.first({useMasterKey:true})
.then(function(user) {
if(user)
{
var token = user.getSessionToken();
//token is null
}
我正在进行 SSO 登录并使用来自 SAML 服务器的令牌作为 Parse 用户名。在我的移动客户端用户登录到 SSO 服务器并向客户端提供解析会话令牌后,我需要登录到 Parse。
对于现有的解析用户,解决方案是查询用户,使用主密钥将密码更改为随机的超级密码,使用新密码登录,然后获取会话令牌并将其发送沿着。
希望这对某人有所帮助。