A simple CAPTCHA service implementation.
Go to file
2022-08-28 23:30:38 +04:00
bin Initial commit with a fully working program, lel. 2022-06-24 23:09:46 +04:00
build/archlinux Oops, removed file renaming. 2022-08-25 04:58:39 +04:00
cmd/justcaptchad A version increased to 1.1.1. And a version now is being passed from ldflags in a Makefile. 2022-08-17 21:49:57 +04:00
init/systemd Removed unnecessary quotes around a path to unix-socket. 2022-08-24 21:22:31 +04:00
internal PNG was replaced by JPEG because of smaller image sizes. ~11.5KB for PNG vs just <2KB for JPEG with 20% quality. 2022-08-28 23:30:38 +04:00
pkg Added Remove() method. CAPTCHA word is capitalised in comments. In IsSolved() method of a DB a CAPTCHA's IsSolved method is now called within a return statement. 2022-08-28 23:27:54 +04:00
.gitignore Initial commit with a fully working program, lel. 2022-06-24 23:09:46 +04:00
go.mod Updated indirect dependencies. And go version to 1.18. 2022-08-19 02:31:02 +04:00
go.sum Updated go.sum. 2022-08-24 21:21:54 +04:00
LICENSE Initial commit with a fully working program, lel. 2022-06-24 23:09:46 +04:00
Makefile Version changed to 1.1.2. 2022-08-19 02:26:03 +04:00
README.md README minor change. 2022-08-19 21:37:51 +04:00

justcaptcha ver. 1.1.2

A simple CAPTCHA service implementation.

Usage

justcaptchad -expiry 5m -listen /var/run/justcaptchad/j.sock

-expiry takes time for CAPTCHA to be valid for in format X{s,m,h}.

-listen is ip:port or /path/to/unix.sock to listen on.

API

Get a new captcha

GET /

It will return an ID of a new captcha in plaintext.

HTTP codes

  • 200 if created

Get an image for a captcha

GET /:captcha_id/image?style=

Responds with an image (e.g. in PNG format).

An optional query parameter style= could be supplied if captcha implementation support different styles.

HTTP codes

  • 200 if exists
  • 404 if doesn't exist
  • 500 if for some reason Image wasn't created

Submit an answer

POST /:captcha_id

It takes one form-data parameter answer=123456.

Responds with empty body and one of HTTP codes.

HTTP codes

  • 200 if solved
  • 403 if not solved
  • 404 if doesn't exist

Check if captcha is solved

GET /:captcha_id

Responds with empty body and one of HTTP codes.

HTTP codes

  • 200 if solved
  • 403 if not solved
  • 404 if doesn't exist