Получение токена авторизации от hitbox.tv с restsharp - плохой запрос?

StackOverflow https://stackoverflow.com//questions/23021127

Вопрос

Я пытаюсь получить токен Authbox Hitbox за 2 дня, но все же просто получить ту же ошибку: «плохой запрос» и в качестве содержимого ответа «AUTH_FAILED». Все, что я нашел в огромном интернете, не помог.: C

Так .. Я использую Restsharp, который работал нормально для обычных запросов HTTP URL (Yey ...)

Документация для Hitbox довольно коротка ( http://developers.hitbox.tv/token )... так что не так много помощи там

(Я знаю, что там есть много вопросов этой темы, попробовали больше всего, но все еще одинакового ответа ...)

Так что это мой код ATM:

  public static void GetAuthToken(object user)
  {
       var client = new RestClient();
       client.BaseUrl = "http://api.hitbox.tv/";

       var request = new RestRequest("auth/token", Method.POST) { RequestFormat = DataFormat.Json };
       request.AddBody("login=Zetter&pass=MyPassword&app=MyAppName");

       var response = client.Execute(request);
       Console.Out.WriteLine(response.StatusDescription);
       Console.Out.WriteLine(response.Content);
  }
.

Как я уже сказал.Пробовал очень много, но на данный момент я минимизировал код обратно в исходный код.

Спасибо заранее.:)

Это было полезно?

Решение

Наконец я нашел способ сделать это.Это намного проще, чем я впервые подумал.

public static void GetAuthToken(object user)
{
    var client = new RestClient();
    client.BaseUrl = "http://api.hitbox.tv";
    client.Authenticator = new SimpleAuthenticator("login", "Zetter", "pass", "MyPassword");
    var request = new RestRequest("auth/token/", Method.POST);
    var response = client.Post(request);
}
.

Теперь токен авторизации можно найти в ответе ...

Хорошо значение «Приложение» отсутствует.Поэтому я исследовал в исходных файлах RestSharp и нашел это решение:

public static void GetAuthToken(object user)
{
    var client = new RestClient();
    client.BaseUrl = "http://api.hitbox.tv";

    var request = new RestRequest("auth/token/", Method.POST);
    request.AddParameter("login", "Zetter");
    request.AddParameter("pass", "MyPassword");
    request.AddParameter("app", "AppName");

    var response = client.Post(request);
}
.

Ну, это кодирование ... xd

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top