本文整理汇总了Golang中github.com/globocom/tsuru/validation.ValidateEmail函数的典型用法代码示例。如果您正苦于以下问题:Golang ValidateEmail函数的具体用法?Golang ValidateEmail怎么用?Golang ValidateEmail使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了ValidateEmail函数的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: createUser
func createUser(w http.ResponseWriter, r *http.Request) error {
var u auth.User
err := json.NewDecoder(r.Body).Decode(&u)
if err != nil {
return &errors.HTTP{Code: http.StatusBadRequest, Message: err.Error()}
}
if !validation.ValidateEmail(u.Email) {
return &errors.HTTP{Code: http.StatusBadRequest, Message: emailError}
}
if !validation.ValidateLength(u.Password, passwordMinLen, passwordMaxLen) {
return &errors.HTTP{Code: http.StatusBadRequest, Message: passwordError}
}
gURL := repository.ServerURL()
c := gandalf.Client{Endpoint: gURL}
if _, err := c.NewUser(u.Email, keyToMap(u.Keys)); err != nil {
return fmt.Errorf("Failed to create user in the git server: %s", err)
}
if err := u.Create(); err == nil {
rec.Log(u.Email, "create-user")
if limit, err := config.GetUint("quota:apps-per-user"); err == nil {
quota.Create(u.Email, uint(limit))
}
w.WriteHeader(http.StatusCreated)
return nil
}
if _, err = auth.GetUserByEmail(u.Email); err == nil {
err = &errors.HTTP{Code: http.StatusConflict, Message: "This email is already registered"}
}
return err
}
开发者ID:pombredanne,项目名称:docker-stuff,代码行数:30,代码来源:auth.go
示例2: CreateUser
func CreateUser(w http.ResponseWriter, r *http.Request) error {
var u auth.User
err := json.NewDecoder(r.Body).Decode(&u)
if err != nil {
return &errors.Http{Code: http.StatusBadRequest, Message: err.Error()}
}
if !validation.ValidateEmail(u.Email) {
return &errors.Http{Code: http.StatusPreconditionFailed, Message: emailError}
}
if !validation.ValidateLength(u.Password, passwordMinLen, passwordMaxLen) {
return &errors.Http{Code: http.StatusPreconditionFailed, Message: passwordError}
}
gUrl := repository.GitServerUri()
c := gandalf.Client{Endpoint: gUrl}
if _, err := c.NewUser(u.Email, keyToMap(u.Keys)); err != nil {
return fmt.Errorf("Failed to create user in the git server: %s", err)
}
if err := u.Create(); err == nil {
w.WriteHeader(http.StatusCreated)
return nil
}
if u.Get() == nil {
err = &errors.Http{Code: http.StatusConflict, Message: "This email is already registered"}
}
return err
}
开发者ID:nedmax,项目名称:tsuru,代码行数:26,代码来源:auth.go
示例3: Login
func Login(w http.ResponseWriter, r *http.Request) error {
var pass map[string]string
err := json.NewDecoder(r.Body).Decode(&pass)
if err != nil {
return &errors.Http{Code: http.StatusBadRequest, Message: "Invalid JSON"}
}
password, ok := pass["password"]
if !ok {
msg := "You must provide a password to login"
return &errors.Http{Code: http.StatusBadRequest, Message: msg}
}
if !validation.ValidateLength(password, passwordMinLen, passwordMaxLen) {
return &errors.Http{Code: http.StatusPreconditionFailed, Message: passwordError}
}
u := auth.User{Email: r.URL.Query().Get(":email")}
if !validation.ValidateEmail(u.Email) {
return &errors.Http{Code: http.StatusPreconditionFailed, Message: emailError}
}
err = u.Get()
if err != nil {
return &errors.Http{Code: http.StatusNotFound, Message: "User not found"}
}
if u.Login(password) {
t, _ := u.CreateToken()
fmt.Fprintf(w, `{"token":"%s"}`, t.Token)
return nil
}
msg := "Authentication failed, wrong password"
return &errors.Http{Code: http.StatusUnauthorized, Message: msg}
}
开发者ID:nedmax,项目名称:tsuru,代码行数:30,代码来源:auth.go
示例4: GetUserByEmail
func GetUserByEmail(email string) (*User, error) {
if !validation.ValidateEmail(email) {
return nil, &errors.ValidationError{Message: emailError}
}
var u User
conn, err := db.Conn()
if err != nil {
return nil, err
}
defer conn.Close()
err = conn.Users().Find(bson.M{"email": email}).One(&u)
if err != nil {
return nil, ErrUserNotFound
}
return &u, nil
}
开发者ID:pombredanne,项目名称:docker-stuff,代码行数:16,代码来源:user.go
注:本文中的github.com/globocom/tsuru/validation.ValidateEmail函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论