Pergunta

Eu estou tentando chegar a um hitbox de autenticação de token para os 2 dias, mas ainda obtendo apenas o mesmo Erro:"Bad Request" e como o conteúdo da resposta "auth_failed".Tudo que eu encontrei na Internet não ajuda.:C

Então..Eu estou usando Restsharp, que funcionou bem para o HTTP normal solicitações de URL (yey ...)

A documentação para hitbox é muito curto (http://developers.hitbox.tv/token) ...isso não ajuda muito não

(Eu sei que existem muitas perguntas deste Tópico lá fora, tentei mais, mas ainda a mesma resposta...)

Então esse é o meu Código de 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);
  }

Como eu disse.Tentei muito, mas agora eu minimizado o Código para o Código original.

Obrigado antecipadamente.:)

Foi útil?

Solução

Finalmente, eu encontrei uma maneira de fazê-lo.É muito mais fácil do que eu imaginava.

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);
}

Agora, a autenticação de token pode ser encontrado na resposta...

Bem, o "aplicativo" valor está em falta.Assim, pesquisei nos arquivos de origem de Restsharp e encontrei esta solução:

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);
}

Bem, essa é a codificação ...xD

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top