Нужно ли для использования REST API предварительно авторизоваться?
Moderators: Developer, Contributor
Нужно ли для использования REST API предварительно авторизоваться?
При попытке использовать токен через постмен, меня бросает на форму авторизации. Вопрос такой... Должен ли я предварительно авторизоваться тем же пользователем? Отдельного АПИ для авторизации нет. Но и без авторизации меня не пускает. Что делать?
Re: Нужно ли для использования REST API предварительно авторизоваться?
Предварительная авторизация не нужна.
Запросы должны работать хоть в командной строке с помощью утилиты curl, которая ничего не знает о ваших сеансах в браузере.
Проверьте документацию https://documenter.getpostman.com/view/ ... pi/7Lt6zkP
Также желательно обновиться до последней версии Мантис 2.23 (на текущий момент).
Запросы должны работать хоть в командной строке с помощью утилиты curl, которая ничего не знает о ваших сеансах в браузере.
Проверьте документацию https://documenter.getpostman.com/view/ ... pi/7Lt6zkP
Также желательно обновиться до последней версии Мантис 2.23 (на текущий момент).
Re: Нужно ли для использования REST API предварительно авторизоваться?
@Kirill
1. Обновил мантис до последнего.
2. Сгенерил токен заново
3. Обновил токен в rest-запросе
4. То же самое - код 200 и в респонсе страница авторизации
В документации ничего не сказано о каких-то специфических настройках.
Что ещё может быть?
1. Обновил мантис до последнего.
2. Сгенерил токен заново
3. Обновил токен в rest-запросе
4. То же самое - код 200 и в респонсе страница авторизации
В документации ничего не сказано о каких-то специфических настройках.
Что ещё может быть?
Re: Нужно ли для использования REST API предварительно авторизоваться?
Вы пробовали выполнить такой скрипт в командной строке?
В нем надо заменить {{url}} и {{token}} на свои. А также скачать файл curl, например по этому этому адресу https://curl.haxx.se/download.html, там есть версия для Windows
Code: Select all
curl --location --request GET '{{url}}/api/rest/projects/' --header 'Authorization: {{token}}'
Re: Нужно ли для использования REST API предварительно авторизоваться?
Попробовал curl, получаю html все той же страницы авторизации.Kirill wrote: ↑11 Jan 2020, 13:59 Вы пробовали выполнить такой скрипт в командной строке?В нем надо заменить {{url}} и {{token}} на свои. А также скачать файл curl, например по этому этому адресу https://curl.haxx.se/download.html, там есть версия для WindowsCode: Select all
curl --location --request GET '{{url}}/api/rest/projects/' --header 'Authorization: {{token}}'
Re: Нужно ли для использования REST API предварительно авторизоваться?
А доступ к логам вебсервера есть?
Можете сюда выложить? Хотя с этими вопросами лучше обращаться на специализированных форумах.
Можете сюда выложить? Хотя с этими вопросами лучше обращаться на специализированных форумах.
Re: Нужно ли для использования REST API предварительно авторизоваться?
А какие именно логи? Я в этом деле слаб. Есть логи vestacp, логи nginx, логи мантиса. А может вообще нужно логи апача смотреть? Логи мантиса я пытался включить, но при отправке запросов они пустые. Не знаю, толи нет что логировать, толи запросы по rest не доходят в лог-файлы.
Re: Нужно ли для использования REST API предварительно авторизоваться?
Ни один лог от vestacp не показывает, что апи запросы, в том числе и nginx.
Но я могу в php-коде мантиса вручную дописать логи если у кого-нибудь есть идеи что где можно проверить.
Но я могу в php-коде мантиса вручную дописать логи если у кого-нибудь есть идеи что где можно проверить.
Re: Нужно ли для использования REST API предварительно авторизоваться?
Проверил все еще раз постменом:
1. Если отправляю запрос на /api/rest без токена, то получаю "401 API token required"
2. Если отправляю запрос на /api/rest с неправильным токеном, то получаю "403API token not found"
3. Если отправляю запрос на /api/rest с правильным токеном, то получаю "Page Not Found. The page you are looking for could not be found. Check the address bar to ensure your URL is spelled correctly. If all else fails, you can visit our home page at the link below."
4. Если отправляю запрос на /api/rest/projects/ с правильным токеном, то получаю страницу авторизации.
Насколько я понимаю, первые три кейса работают нормально, а вот последний - что-то не так. Как будто такого АПИ не существует и меня кидает на сценарий обычной авторизации.
Re: Нужно ли для использования REST API предварительно авторизоваться?
А если последнее с неправильным токеном?