防止用户在 Backendless 中使用相同的用户名注册

Prevent users from registering with the same username in Backendless

我正在使用 Backendless 创建一个 Swift 应用程序。该应用程序会自动创建用户的用户名属性,但将来可能会更改。无论哪种方式,如果用户与另一个用户具有相同的用户名,我如何才能让 Backendless 阻止用户注册?

在允许用户注册之前,我在 运行 的 Backendless(业务逻辑部分)中添加了一个事件处理程序:

/* global Backendless */

/**
* @param {Object} req The request object contains information about the request
* @param {Object} req.context The execution context contains an information about application, current user and event
* @param {Object} req.user 
*/
Backendless.ServerCode.User.beforeRegister(function(req) {
  //add your code here
}, true);

如何设置它以检查用户名值是否与现有用户名值相同,如果是,则抛出错误?

这里是查询用户是否存在的查询

let query = BackendlessDataQuery()
let userEmail = "foo@foo.com"
query.whereClause = "email = '\(userEmail)'"
let users = backendless.data.of(BackendlessUser.ofClass()).find(query)
if( users.data.count > 0 )
{
// user exists
}

引用自Here

您可以在 username 列上设置 UNIQUE 约束。这样您将在您的应用程序中收到错误,我们可以按照您的意愿进行处理。