2011-12-06 16 views
0

パラメータを送信しません:Webクライアント、folowing、私はFogBugzのウェブサイトからトークンを取得しよう

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

を私が持っている:

<?xml version="1.0" encoding="UTF-8"?><response><error code="1">Nom d'utilisateur ou mot de passe incorrect</error></response> 
:サーバーの応答以下

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

IISログで要求を確認できますが、パラメータはありません。

私は間違っていますか?

編集:私はパラメータが正しいと確信しています私はテストしたブラウザで、それはうまく動作します。

+0

エラーは、非Fenchリーダーのユーザー名またはパスワードが間違っています。 –

+1

あなたがブラウザでテストしたとすると、ローカルマシンとネットワーク/ドメイン上のマシンでテストされました。おそらく私はあなたが見ることができるものからパスワードを使用しているだけです.. cmdLogonはユーザー名..ですが、それはもっと呼び出すメソッド()のように見えます – MethodMan

+0

@DJ KRAZEあなたが言ったことをあなたは理解していません" –

答えて

1

私はバイオリンでこれを実行して、あなたのコードは、リクエストボディに次の内容のリクエストを送信します。

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

代わりに、私はあなたがdocumentationごとにクエリ文字列にこの情報を送信する必要があると考えています(セクション「ログオン」を参照してください):

http://www.example.com/api.asp?cmd=logon&[email protected]&password=BigMac 

あなたのクエリ文字列を構築するためにNameValueCollectionを使用したい場合は、このanswerはそれを行うための方法を提供します。

+0

しかし、私はPOSTメソッドで自分のパラメータを送信したいと思っています。 –

+0

また、POSTメソッドでの送信が許可されていることを明示するセクションには、「APIリクエストの一般的なルール」というセクションがあります。 –

関連する問題