Pergunta

Tento obter o token de meu site fogbugz, a seguir:

http://fogbugz.stackexchange.com/fogbugz-xml-api

Eu tenho:

using (var wb = new WebClient())
{   
                var data = new NameValueCollection();
                data["cmd"] = HttpUtility.UrlEncode(cmdLogon);
                data["email"] = HttpUtility.UrlEncode(email);
                data["password"] = HttpUtility.UrlEncode(password);
                content = encoding.GetString(wb.UploadValues(url, "POST", data));
 }

Abaixo da resposta do servidor:

<?xml version="1.0" encoding="UTF-8"?><response><error code="1">Nom d'utilisateur ou mot de passe incorrect</error></response>

Posso ver a solicitação nos logs do IIS, mas os parâmetros estão ausentes.

O que estou fazendo de errado?

editar: Tenho certeza de que os parâmetros estão corretos, porque testei no navegador e funciona bem.

Foi útil?

Solução

Eu executei isso com o Fiddler e seu código envia uma solicitação com o seguinte conteúdo no corpo da solicitação:

cmd=logon&email=test-email&password=test-password

Em vez disso, acredito que você deve enviar essas informações na string de consulta de acordo com a documentação (consulte a seção "Fazendo logon"):

http://www.example.com/api.asp?cmd=logon&email=xxx@example.com&password=BigMac

Se você deseja usar um NameValueCollection para construir sua querystring, esta resposta fornece uma maneira de fazer isso.

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