Конечная точка OAuth 'oauth2-token' возвращает HTML, а не JSON

Я следую документации в отношении создания токена доступа с использованием потока учетных данных клиента OAuth, по следующей ссылке. Однако при предоставлении указанного ниже запроса HTTP POST он возвращает тело HTML страницы входа, а не ожидаемый ответ JSON, содержащий токен доступа. Кажется, это правильная конечная точка, потому что я получаю HTML-страницу с ошибкой 405 при использовании вместо этого метода GET - что ожидается, помимо того, что он также возвращается в HTML.

Это известная проблема или я где-то ошибаюсь?

curl --location --request POST 'http://example.com/oauth2-token' \
--header 'Content-Type: application/json' \
--data-raw '{
    "grant_type": "client_credentials",
    "client_id": "xxxxx",
    "client_secret": "xxxxxx"
}

Кроме того, в конфигурации включен API, а также завершена инициализация OAuth с генерацией ключа шифрования.

OroCommerce работает под управлением 4.1.1 на CentOS с Nginx (через Azure Marketplace)


person asimplecore    schedule 13.07.2020    source источник
comment
Какое приложение и версию вы используете?   -  person Andrey Yatsenko    schedule 13.07.2020
comment
Я использую OroCommerce версии 4.1.1 - я обновлю OP, чтобы включить это. Запрос API был сделан с помощью Postman.   -  person asimplecore    schedule 13.07.2020
comment
Нашел ошибку. Когда у вас отключен гостевой доступ - API недоступен и возвращает HTML-код страницы входа. Включен ли у вас гостевой доступ (doc.oroinc.com/ user / concept-guides / guest / # guest-website-access)?   -  person Andrey Yatsenko    schedule 13.07.2020
comment
Спасибо, что нашли это. Я отключил его, и, как вы говорите, теперь он работает нормально! К сожалению, нам нужно отключить гостевой режим. Но мы можем временно отключить его, чтобы разрешить выполнение нашей программы. Есть ли где-нибудь, где я могу отследить проблему, пожалуйста?   -  person asimplecore    schedule 13.07.2020
comment
Если вы используете версию сообщества, создайте отчет об ошибке на GitHub, чтобы отслеживать прогресс. github.com/oroinc/platform/issues/new/choose. Спасибо!   -  person Andrey Yatsenko    schedule 13.07.2020
comment
Супер, сгодится - спасибо за помощь! :)   -  person asimplecore    schedule 13.07.2020


Ответы (1)


Как указано выше Андреем Яценко, эта проблема вызвана ошибкой из-за отключения гостевого режима в системе - ›Конфигурация - ›Гостевой режим. API возвращает страницу входа из отключенного гостевого режима. При включении гостевого режима конечная точка возвращает JSON, как и ожидалось.

person asimplecore    schedule 13.07.2020