Go to file
2023-12-08 21:18:22 +06:00
app Add demo mode restriction to CaptchaToken destroy method. 2023-12-05 21:48:02 +06:00
bootstrap Install Laravel. 2023-03-05 20:14:04 +06:00
config Add demo mode restrictions to user operations. 2023-12-05 00:53:04 +06:00
database Revived API /api/v1/captcha. 2023-09-19 14:27:33 +06:00
docker Add Docker setup for production environment. 2023-12-08 21:10:31 +06:00
lang Add demo mode restrictions to user operations. 2023-12-05 00:53:04 +06:00
public Added service-captcha-gui. 2023-12-04 22:42:35 +06:00
resources Add license information for captcha backgrounds. 2023-12-05 21:01:49 +06:00
routes Revived API POST /captcha/{captcha_uuid}. 2023-11-26 22:42:22 +06:00
storage Install Laravel. 2023-03-05 20:14:04 +06:00
tests Install Laravel. 2023-03-05 20:14:04 +06:00
.editorconfig Install Laravel. 2023-03-05 20:14:04 +06:00
.env.example Add demo mode restrictions to user operations. 2023-12-05 00:53:04 +06:00
.gitattributes Install Laravel. 2023-03-05 20:14:04 +06:00
.gitignore Install Laravel. 2023-03-05 20:14:04 +06:00
artisan Install Laravel. 2023-03-05 20:14:04 +06:00
composer.json Updated composer.lock dependencies settings. Added laravel-lang/common. 2023-06-29 22:11:53 +06:00
composer.lock Updated composer.lock dependencies settings. Added laravel-lang/common. 2023-06-29 22:11:53 +06:00
docker-compose-prod.yml Add Docker setup for production environment. 2023-12-08 21:10:31 +06:00
docker-compose.yml Remove commented volumes from docker-compose.yml. 2023-08-27 22:25:09 +06:00
LICENSE.md Added file LICENSE. 2023-12-04 22:41:23 +06:00
package-lock.json Added packages: 2023-06-29 22:17:55 +06:00
package.json Added packages: 2023-06-29 22:17:55 +06:00
phpunit.xml Install Laravel. 2023-03-05 20:14:04 +06:00
README.md Update README with project specifics. 2023-12-08 21:15:51 +06:00
vite.config.js Added and configured css, js in Vite. 2023-06-29 22:20:38 +06:00

О проекте

Захотелось написать свой независимый сервис защиты от роботов. Сервис каптча написан на фреймворке Laravel. Вдохновлялся, а так же брал картинки с проекта Go Captcha.

Зависимости

php 8.2 (модули: redis, gd)

redis

mysql 8

Демострация

Демо сервис каптча: https://captcha-admin-demo.tut-site.net/

Email: demo@tut-site.net

Пароль: demodemo

Демо каптча: https://captcha-demo.tut-site.net/

API

https://captcha-admin-demo.tut-site.net/api-docs/

Javascript клиент для сайта

https://git.kor-elf.net/kor-elf/captcha-rule-for-laravel

Как проверять со стороны бэкенда

Для Laravel 10 есть готовый пакет: https://git.kor-elf.net/kor-elf/captcha-rule-for-laravel

Можно установить этот пакет так: composer require kor-elf/captcha-rule-for-laravel


Curl:

curl -X POST 'https://captcha-admin-demo.tut-site.net/api/v1/captcha/{captcha-token}' -H 'private-token: {your-private-token}' -H 'Content-Type: application/json' -d '{"user_agent": "{user-agent}"}' --max-time 10

Где {captcha-token} - токен получил пользователь от сервиса каптча после успешной проверки.

Где {your-private-token} - приватный токен, который мы создали в админке.

Где {user-agent} - передаём user agent от пользователя, который проходил каптчу.

Успешная проверка пользователя вернёт ответ код 200 и status = true. Иначе считаем, что пользователь не прошёл проверку на робота.

Репозиторий с демо

https://git.kor-elf.net/kor-elf/service-captcha-demo

Лицензия

MIT license.