0

我尝试从我的 fogbugz 网站获取令牌,如下:

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

我有 :

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

在服务器响应下方:

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

我可以在 IIS 日志中看到请求,但没有参数。

我做错了什么?

编辑:我确定参数是正确的,因为我在浏览器中进行了测试并且效果很好。

4

1 回答 1

1

我用 Fiddler 运行了这个,你的代码在请求正文中发送了一个包含以下内容的请求:

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

相反,我相信您应该按照文档在查询字符串中发送此信息(请参阅“登录”部分):

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

如果您想使用 aNameValueCollection来构建您的查询字符串,这个答案提供了一种方法来做到这一点。

于 2011-12-06T15:24:15.843 回答