Запрос Oauth с использованием RestSharp

#vb.net #oauth #restsharp

#vb.net #oauth #restsharp

Вопрос:

Я пытаюсь отправить запрос oauth для получения токена, и независимо от того, что я делаю, я получаю сообщение об ошибке, что одноразовый номер уже использовался. Поэтому я решил отправить тот же запрос с помощью Fiddler, и все работало безупречно. Единственная проблема, которую я вижу, связана с телом запроса. Я должен отправить grant_type=client_credentials в теле, и он должен иметь тип application / x-www-form-urlencoded. не Json и не XML. RestSharp описывает добавление JsonBody и XMLbody, но оба из них задали бы неправильный тип содержимого для запроса. В моем коде я пытаюсь добавить тело следующим образом:

запрос.AddParameter(«grant_type», «client_credentials», ParameterType.RequestBody)

Это правильный способ добавления тела запроса? Я также открыт для всех предложений о том, что еще может быть причиной этой ошибки

Спасибо

Ответ №1:

Для OAuth для генерации токена в качестве параметров запроса должны быть отправлены grant_type, code, client_secret и т. Д. В RestSharp это выполняется как request.AddQueryParameter("grant_type", "client_credentials")

Все подробности об OAuth здесь