0

http://myanimelist.net/modules.php?go=api#verifycredのようなことを行うにはどうすればよいでしょうか

別名「curl -u user:password http://myanimelist.net/api/account/verify_credentials.xml

これまでのコードのIDをオプションにしたい

string url = "http://myanimelist.net/api/account/verify_credentials.xml";
WebRequest request = WebRequest.Create(url);
request.ContentType = "xml";
request.Method = "GET";
request.Credentials = new NetworkCredential(username, password);
byte[] buffer = Encoding.GetEncoding("UTF-8").GetBytes("xml/user/id"); // i think this line?
Stream reqstr = request.GetRequestStream();
reqstr.Write(buffer, 0, buffer.Length);                 
reqstr.Close();  

しかし、「」でエラーが発生しますreqstr.Write(buffer, 0, buffer.Length)この動詞タイプのコンテンツ本文を送信できません。グーグルを試しましたが、優先されません。C#を使用しています

4

1 に答える 1

2

スニペットは、リクエスト データを含むリクエストを送信しようとしてGETいます (呼び出しGetRequestStreamてから、リクエスト ストリームにデータを書き込んでいます)。HTTP プロトコルではこれが許可されていませんPOST。リクエストでのみデータを送信できます。

ただし、呼び出そうとしている API は、実際には別のことを行っています。XML データを API に送信する必要はありません。XML データ (ユーザー ID とユーザー名を含む) は、ログインに成功したときに得られる応答です。

したがって、XML データを呼び出しGetRequestStream書き込むGetResponse代わりに、XML データを呼び出してGetResponseStreamから読み取る必要があります。

于 2013-06-10T00:28:26.373 に答える