Здравствуйте. Никогда ранее не сталкивался с написанием API для сайта. С получением общих данных вроде как разобрался.
Не понятен один нюанс: человек установил приложение. В приложении два поля : логин и пароль . Ввел и отправил .. Все окей, данные верны.
А что дальше должно происходить, чтобы попасть в ЛК: должны куки запоминаться на телефоне, сессии или что ? Уже перечитал инфы и что-то не могу понять вообще.
Спасибо
Обычно для авторизации в API
используют механизм OAuth2
. Суть в том, что ваш сервер при получении авторизационных данных должен отдавать клиенту шифрованный token, который в последствии клиент будет передавать с запросами в заголовках, по этому токену вы и будете определять клиент. Вот ссылка на пакет OAuth2
сервера на чистом PHP
. https://packagist.org/packages/league/oauth2-server
Так же если хотите вы можете воспользоваться механизмом JWT
Json Web Token
- тоже некоторая альтерантива OAuth2 тоже довольно популярная - логика такая же клиент посылает авторизационные данные вы выдаете ему JWT который в последствии он использует для обращения пока у тог оне пройдет срок годности. Вот популярный пакет про JWT
https://packagist.org/packages/lcobucci/jwt
В общем случае особое внимание надо уделять механизму обновления токенов, когда они expire'ятся так как обычно API
- приложение многопоточное, таким образом у вас может произойти ситуация когда два запроса придут один за одним с просроченным token'ом - и эт у ситуацию надо как-то решать.
В простом случае на update токена, если он уже идет должна быт ькакая-то блокировка и новый токен можно записать в БД со сроком истечения, в то же время заблокирвоанный запрос должен получить заголовок, требующий его обратится за token'ом снова и так пока не будет в базе доступен новый токен.(это как пример решения проблемы конкурентных запросов с просроченным токеном)
Виртуальный выделенный сервер (VDS) становится отличным выбором
Есть JSON, который тянется с https://zkillboardcom/api/kills/corporationID/1000107/limit/10/ Сам JSON не бросаю - он огромный никак не могу его распарсить
Добавляю в таблицу (БД использую ОРАКЛ) данные по форме! Отправляю по форме данные типа датыКак конвертировать строку в дату? Пишет литерал...