• Как максимально усложнить нежелательные вызовы REST API?

    @aleksey_k
    То, о чем вы пишете, очень похоже на CSRF. Есть несколько методов защиты от этого, в интернете есть примеры. Самый простой - проверка Referrer, чуть сложнее - генерировать CSRF-токен, который будет передаваться вместе с формой, и который будет знать сервер. Если форма фейлится при проверке этого токена - значит кто-то обманывает.
    Если же используете AJAX - там нужно будет использовать одноразовый токен, который будет обновляться при ответе с сервера.
    Ответ написан
    Комментировать
  • Rest API для своего сайта, с чего начать?

    @aleksey_k
    1. Для начала определяете, к каким данным будет получать доступ человек/скрипт посредством вашего REST API
    2. После того, как вы четко понимаете, что именно вы будете отдавать пользователям - начинаете думать о доступе к API, будет ли он у вас публично доступным (тогда думайте о ограничении количества запросов с одного IP/сессии), будет ли он у вас доступным по токенам (я говорю об Oauth), или по паре логин-пароль, как крайний случай. Реализовываете доступ.
    3. Дальше все зависит от того, как уже написан ваш сайт. Если вы используете MVC фреймворк для него - можете выделить отдельный контроллер, который назовете, к примеру, ApiController, будут у него, скажем, методы get-friends, get-likes, get-latest-posts, которые будут отдавать нужные данные в JSON
    3.1. Возможен второй вариант, вы заводите поддомен api.yoursite.com, заводите под него другой виртуальный хост(или реально другой), и разрабатываете api как отдельный проект.
    Ответ написан
    Комментировать
  • Почему возникает Connection Timeout при подключении к удаленному postgresql?

    @aleksey_k Автор вопроса
    Проблема была на стороне хостера, по их словам, была включена блокировка входящих соединений. Тем не менее, в ЛК у меня нет и не было соответствующей настройки. Спасибо всем откликнувшимся!
    Ответ написан
    Комментировать