【问题标题】:request.user not set in Cloud Code function云代码功能中未设置 request.user
【发布时间】:2016-04-29 18:33:30
【问题描述】:

我正在使用登录用户从 JavaScript 应用程序调用 Cloud Code 函数,如下所示:

if (Parse.User.current()) { // just to assert there is a logged-in user
  Parse.Cloud.run('foo').then(...);
}

在 Cloud Code 函数中,我想访问当前用户(即调用函数的上下文中的用户):

Parse.Cloud.define('foo', (req, res) => {
  var user = req.user;
  //...
}

很遗憾,user 未定义。这段代码应该可以工作,还是有明显的错误?

P.S.:使用 parse-server 2.2.7(基于 parse-server-example)和 parse-SDK-JS 1.8.3。

【问题讨论】:

标签: parse-cloud-code parse-server


【解决方案1】:

1-> 确保更新到最新版本的 Parse Server。

sudo npm install parse-server@latest -g

在撰写本文时,它应该是 2.2.7。
参考:https://github.com/ParsePlatform/parse-server/releases

2-> 确保用户有一个有效的会话。
@hramos: "request.user 只会在函数由经过身份验证的用户触发时指向 _User 对象。"

参考:https://github.com/ParsePlatform/parse-server/issues/1619


In other words...., logout and then log back in.

【讨论】:

  • 正如我的问题所述,我已经在使用 parse-server 2.2.7。我也尝试了多次注销/登录但没有成功。尽管如此,一天后,在更改了大量代码(但没有任何影响该问题的代码)之后,我确实在 CC 请求对象中获得了当前用户。所以还是谢谢:)
  • @dr_barto 我面临同样的问题,但关键是我让用户回来,有时,如果我重置服务器,等等等等......它是随机发生的.
  • 我知道这个问题已被选中,但有没有可能这只发生在模拟器上?
猜你喜欢
  • 2021-10-12
  • 2021-06-14
  • 1970-01-01
  • 2016-02-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-08
相关资源
最近更新 更多