Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ErrCaptchaFailed = fmt.Errorf("captcha failed")
ErrCaptchaFailed is returned when a CAPTCHA fails
Functions ¶
This section is empty.
Types ¶
type CaptchaService ¶
type CaptchaService interface {
VerifyCaptcha(token string, ip string) (VerifyCaptchaResponse, error)
}
CaptchaService describes methods for working with Google Captcha
type GoogleRecaptchaService ¶
type GoogleRecaptchaService struct {
CaptchaSecret string
HttpClient restclient.HTTPClientInterface
}
GoogleRecaptchaService provides methods for working with Google Recaptcha
func NewGoogleRecaptchaService ¶
func NewGoogleRecaptchaService(config GoogleRecaptchaServiceConfig) *GoogleRecaptchaService
NewGoogleRecaptchaService creates a new Captcha service that uses Google Recaptcha
func (*GoogleRecaptchaService) VerifyCaptcha ¶
func (s *GoogleRecaptchaService) VerifyCaptcha(token string, ip string) (VerifyCaptchaResponse, error)
VerifyCaptcha verifies the captcha request with the provider and returns a response
type GoogleRecaptchaServiceConfig ¶
type GoogleRecaptchaServiceConfig struct {
CaptchaSecret string
}
GoogleRecaptchaServiceConfig is used to configure a GoogleRecaptchaService
type VerifyCaptchaRequest ¶
type VerifyCaptchaRequest struct {
Secret string `json:"secret"`
Token string `json:"response"`
RemoteIP string `json:"remoteip"`
}
VerifyCaptchaRequest is used to request a Captcha verification
func (VerifyCaptchaRequest) ToJSON ¶
func (r VerifyCaptchaRequest) ToJSON() []byte
ToJSON converts this VerifyCaptchaRequest to JSON
func (VerifyCaptchaRequest) ToQueryString ¶
func (r VerifyCaptchaRequest) ToQueryString() []byte
ToQueryString returns a query string from this request's parameters
type VerifyCaptchaResponse ¶
type VerifyCaptchaResponse struct {
Success bool `json:"success"`
ChallengeTimestamp time.Time `json:"challenge_ts"`
HostName string `json:"hostname"`
ErrorCodes []string `json:"error-codes"`
}
VerifyCaptchaResponse is the response from a Captcha verification request.
func NewVerifyCaptchaResponseFromReader ¶
func NewVerifyCaptchaResponseFromReader(reader io.Reader) (VerifyCaptchaResponse, error)
NewVerifyCaptchaResponseFromReader creates a new VerifyCaptchaResponse struct.