HTTP-запрос для отзыва токена WSO2 Oauth2

Я хочу отозвать токен, предоставленный пользователю через oauth2. Я хочу сделать http пост из приложения Javascript.

Прошел документацию WSO2. Это дает пример Curl.

Пытался:

  1. Пробовал с curl, предоставляя синтаксис. Он отлично работает curl -X POST --basic -u "clientid:clientsecret" -H "Тип содержимого: application/x-www-form-urlencoded;charset=UTF-8" -k -d "token = tokenfromwso2 & token_type_hint = access_token " https://localhost:9443/oauth2/revoke

  2. Попытка сделать то же самое с помощью Http-запроса, но сервер вернул 500 внутренняя ошибка сервера.

Заголовок:

POST / oauth2 / revoke HTTP / 1.1 Хост: localhost:9443 Соединение: keep-alive Длина содержимого: 14 Примите: application / json, text / plain, / Origin: http://localhost:4200/ Авторизация: Основная клиентская информация:clientsecret User-Агент: Mozilla/5.0 (BB10; Touch) AppleWebKit/537.10+ (KHTML, как Gecko) Версия /10.0.9.2372 Mobile Safari/537.10+ Тип содержимого: application/x-www-form-urlencoded;charset=UTF-8 Ссылка: http://localhost:4200/ Accept-Encoding: gzip, deflate, br Accept-Language: en-US, en; q = 0,9

Тело: {"токен":access_token}

Тип предоставления не является неявным, поэтому я не хочу, чтобы пользователь перенаправлял на сервер идентификации wso2.

Я даже пытался закодировать секретный идентификатор клиента, но это тоже вернуло внутреннюю ошибку сервера

Может ли помочь получить правильный синтаксис, чтобы сделать http запрос.

1 ответ

Вам нужно в base64 кодировать идентификатор клиента и секрет. Кроме того, вы должны предоставить токен в виде значения в кодировке URL. То, что вы дали, это полезная нагрузка JSON для тела. Пример запроса можно найти ниже.

Другие вопросы по тегам