Backand.signup() - “创建我的应用用户”未能执行

Posted

技术标签:

【中文标题】Backand.signup() - “创建我的应用用户”未能执行【英文标题】:Backand.signup() - "Create My App User" failed to perform 【发布时间】:2016-03-23 03:48:23 【问题描述】:

我正在尝试使用以下方式注册新用户:

Backand.signup(firstName, lastName, username, password, password2);

但我最终得到:

POST https://api.backand.com/1/user/signup 504 (GATEWAY_TIMEOUT)

当我检查日志(日志 > 服务器端异常)时,我注意到这个错误:

An unexpected signup exception occured The following action: 
"Create My App User" failed to perform: The operation has timed out 
The operation has timed out Exception has been thrown by the target 
of an invocation. The operation has timed out

我还没有接触过“创建我的应用用户”脚本。

安全和身份验证 > 配置 > 公共应用程序: 打开并设置为用户。我还打开和关闭了匿名,并在出现权限问题时在 ReadOnly 和 User 之间切换。

几周前它工作得很好,有几次我能够进入 Security & Auth > Registered User 的表,但我无法让它在我的应用用户中创建任何新条目桌子,甚至现在都可以工作。

任何帮助将不胜感激。

【问题讨论】:

【参考方案1】:

根据“创建我的应用用户”操作返回的服务器端错误,这是一个安全问题。

Action 利用前端用户权限,在这种情况下,它要求 Anonymus 访问能够更新用户对象。

在您关闭匿名开关或将其更改为只读后开始出现错误。

解决方案是在服务器端操作中使用管理员权限。要添加管理员权限,您可以使用基本的 auth Authorization 标头。

将标题代码更改为这一行:

headers:'Authorization':'basic' + btoa(用户名+':'+密码)

因此“创建我的应用用户”操作中的新代码应如下所示:

var 响应 = $http( 方法:“POST”, url:CONSTS.apiUrl + "/1/objects/users", 参数:参数:“同步”:真, 数据:参数, headers:'Authorization':'basic' + btoa (username + ':'+ password) );

用户名是应用主令牌(Securit & Auth /social &keys)。

密码是管理员用户密钥(用户名旁边的团队/密钥图标)

【讨论】:

我又疯狂地爱上了 Backand。没有你的帮助是做不到的!这是如何让您的应用程序公开并具有匿名只读访问权限的答案。谢谢伊泰。 快速跟进:现在唯一的问题是它似乎没有传递我的用户对象所需的额外参数,即:'Backand.signup(firstName, lastName, email, password , 密码2, key1: "value1", key2: "value2" );'我现在还需要在“创建我的应用程序用户”中做些什么来传递这些信息吗? (它以前工作过) @cs_pupil 不是 100% 能够将密码数据存储到自定义用户对象中。理想情况下,作为一种良好做法,我认为您不应该这样做,因为服务器已经将其安全地存储在注册用户对象中。 @Vince,感谢您的回复,我认为您是对的。我可能会更好地措辞,但我试图在密码参数之后传递额外的参数。这些是我想要传递给我的用户对象的内容。我正在尝试传递额外的参数,例如示例here,但在应用 Itay 的修复之后。谢谢,希望这更有意义。 我的错误!请忽略我的后续问题。它的工作方式与应有的完全一样(带有额外的参数)。在我为使其正常工作而进行的所有更改中,我在代码中弄乱了一些东西,只是抓住了它。

以上是关于Backand.signup() - “创建我的应用用户”未能执行的主要内容,如果未能解决你的问题,请参考以下文章

Backand - 没有“Access-Control-Allow-Origin”标头

我啥时候需要提交我的应用以供 Facebook 审核(当只有少数人会使用它时)?

我应该如何配置我的应用以跨类保留 Firebase 用户数据?

我可以使用 Core Bluetooth 打开在 Objective-c 中关闭的应​​用程序吗?

如何修复正在修改或禁用设备上 SELinux 的应用以重新提交到 Google Play

现在不推荐使用 TabActivity 使用 Fragments 创建选项卡