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

时间:2016-11-05 06:29:22

标签: ios swift 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);

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

2 个答案:

答案 0 :(得分:1)

以下是了解用户是否存在的查询

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

答案 1 :(得分:0)

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