本文整理匯總了Golang中github.com/xyproto/pinterface.IUserState.HashPassword方法的典型用法代碼示例。如果您正苦於以下問題:Golang IUserState.HashPassword方法的具體用法?Golang IUserState.HashPassword怎麽用?Golang IUserState.HashPassword使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/xyproto/pinterface.IUserState
的用法示例。
在下文中一共展示了IUserState.HashPassword方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: exportUserstate
//.........這裏部分代碼省略.........
L.Push(lua.LString(username))
return 1 // number of results
}))
// Get the current cookie timeout
// Takes a username
L.SetGlobal("CookieTimeout", L.NewFunction(func(L *lua.LState) int {
username := L.ToString(1)
L.Push(lua.LNumber(userstate.CookieTimeout(username)))
return 1 // number of results
}))
// Set the current cookie timeout
// Takes a timeout number, measured in seconds
L.SetGlobal("SetCookieTimeout", L.NewFunction(func(L *lua.LState) int {
timeout := int64(L.ToNumber(1))
userstate.SetCookieTimeout(timeout)
return 0 // number of results
}))
// Get the current password hashing algorithm (bcrypt, bcrypt+ or sha256)
// Takes nothing
L.SetGlobal("PasswordAlgo", L.NewFunction(func(L *lua.LState) int {
algorithm := userstate.PasswordAlgo()
L.Push(lua.LString(algorithm))
return 1 // number of results
}))
// Set the current password hashing algorithm (bcrypt, bcrypt+ or sha256)
// Takes a string
L.SetGlobal("SetPasswordAlgo", L.NewFunction(func(L *lua.LState) int {
algorithm := L.ToString(1)
userstate.SetPasswordAlgo(algorithm)
return 0 // number of results
}))
// Hash the password, returns a string
// Takes a username and password (username can be used for salting)
L.SetGlobal("HashPassword", L.NewFunction(func(L *lua.LState) int {
username := L.ToString(1)
password := L.ToString(2)
L.Push(lua.LString(userstate.HashPassword(username, password)))
return 1 // number of results
}))
// Check if a given username and password is correct, returns a bool
// Takes a username and password
L.SetGlobal("CorrectPassword", L.NewFunction(func(L *lua.LState) int {
username := L.ToString(1)
password := L.ToString(2)
L.Push(lua.LBool(userstate.CorrectPassword(username, password)))
return 1 // number of results
}))
// Checks if a confirmation code is already in use, returns a bool
// Takes a confirmation code
L.SetGlobal("AlreadyHasConfirmationCode", L.NewFunction(func(L *lua.LState) int {
confirmationCode := L.ToString(1)
L.Push(lua.LBool(userstate.AlreadyHasConfirmationCode(confirmationCode)))
return 1 // number of results
}))
// Find a username based on a given confirmation code, or returns an empty string
// Takes a confirmation code
L.SetGlobal("FindUserByConfirmationCode", L.NewFunction(func(L *lua.LState) int {
confirmationCode := L.ToString(1)
username, err := userstate.FindUserByConfirmationCode(confirmationCode)
var result lua.LString
if err != nil {
result = lua.LString("")
} else {
result = lua.LString(username)
}
L.Push(result)