diff options
| author | Felix Hanley <felix@userspace.com.au> | 2016-01-18 10:06:16 +0000 |
|---|---|---|
| committer | Felix Hanley <felix@userspace.com.au> | 2016-01-18 10:06:16 +0000 |
| commit | 961826fd7bc80bbbc356c216ca11ae9035a3f513 (patch) | |
| tree | 98bc39f04565e1cd4b3e74222583f9851900374d /recaptcha.go | |
| parent | cf6be87a86673aa8cde10935c6558b33a962a90e (diff) | |
| download | go-recaptcha-master.tar.gz go-recaptcha-master.tar.bz2 | |
Diffstat (limited to 'recaptcha.go')
| -rw-r--r-- | recaptcha.go | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/recaptcha.go b/recaptcha.go index a5b35c6..6d5f974 100644 --- a/recaptcha.go +++ b/recaptcha.go @@ -1,3 +1,4 @@ +// Package recaptcha interacts with the reCaptcha verification API package recaptcha import ( @@ -12,10 +13,10 @@ const ( ) var ( - ErrSecretMissing = errors.New("reCaptcha secret is missing.") - ErrSecretInvalid = errors.New("reCaptcha secret is invalid.") - ErrResponseMissing = errors.New("reCaptcha response is missing.") - ErrResponseInvalid = errors.New("reCaptcha response is invalid.") + ErrSecretMissing = errors.New("The secret parameter is missing.") + ErrSecretInvalid = errors.New("The secret parameter is invalid or malformed.") + ErrResponseMissing = errors.New("The response parameter is missing.") + ErrResponseInvalid = errors.New("The response parameter is invalid or malformed.") ) type Response struct { @@ -49,13 +50,17 @@ func (r *Response) populateErrors() { } } +// Public verfication function +// It requires the reCaptcha secret, the response from the widget. +// It returns the reCaptcha response as a struct. func Verify(secret string, response string, remoteip string) (*Response, error) { values := make(url.Values) values.Set("secret", secret) values.Set("response", response) + values.Set("remoteip", remoteip) - resp, err := http.Get(verifyURL + "?" + values.Encode()) + resp, err := http.PostForm(verifyURL, values) if err != nil { return nil, err |
