问题描述
这是我迄今为止的代码。当我运行代码时,它仍然允许我选择不符合规则的密码。我相信这是因为代码只是特别快速而不是快速和解析。我还需要验证但找不到任何与解析相关的内容。
@IBAction func signUp(_ sender: Any){
let user = PFUser()
user.username = emailField.text!
user.password = passwordField.text!
user.email = emailField.text!
// customizing password rules
passwordField.passwordRules = UITextInputPasswordRules(descriptor: "required: upper; required: lower; required: digit; required: [-().&@?'#,/"+]; minlength: 8;")
解决方法
您需要在您的服务器中定义此规则。
在您的解析服务器中,将以下 passwordPolicy
对象添加到 index.js 中的服务器配置中,如下所示:
var api = new ParseServer({
...
passwordPolicy: {
validatorPattern: /^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.{8,})/,// enforce password with at least 8 char with at least 1 lower case,1 upper case and 1 digit
validationError: 'Şifreniz en az 1 küçük harf 1 büyük harf 1 özel işaret 1 sayı içermeli ve 8 karakter uzunluğunda olmalı.',// optional error message to be sent instead of the default "Password does not meet the Password Policy requirements." message.
doNotAllowUsername: true // optional setting to disallow username in passwords
}
...
});