@muhasa

Как запретить все запросы, кроме как ajax'ом с того же сайта?

Здравствуйте.
Есть страница, отправляющая код верификации клиенту по указанному номеру телефона. Сама отправка осуществляется по нажатию кнопки на сайте, а кнопка ajax'ом шлет запрос на файл code.php, например.

Смс-ки - штука платная, как уберечся от того, что люди просто начнут фигачить простые post-запросы с указанием телефона на файл code.php?
Спасибо!
  • Вопрос задан
  • 157 просмотров
Пригласить эксперта
Ответы на вопрос 3
Vlad_IT
@Vlad_IT
Front-end разработчик
Вообще, есть http параметр HTTP_X_REQUESTED_WITH, который при (из различных библиотек) ajax запросе существует и равен xmlhttprequest. Но не во всех библиотеках такой есть (в jQuery.ajax точно есть), поэтому возможно придется указать его явно. Но "хакерам" ничего не стоит передавать его через post запрос самим, поэтому лучше сделать на странице одноразовый csrf токен
Ответ написан
BRAGA96
@BRAGA96
Даже если вы сделаете запросы с этого же домена, то что мне мешает кинуть запрос из консоли на вашем же сайте. Проверка должна быть на сервере, в файле code.php.
Ответ написан
Комментировать
if($_SERVER["HTTP_X_REQUESTED_WITH"] === "XMLHttpRequest"){
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
26 апр. 2024, в 18:27
200000 руб./за проект
26 апр. 2024, в 18:24
80000 руб./за проект
26 апр. 2024, в 18:00
500 руб./за проект