WebAPIを使用してuTorrentからトレントのリストを取得しようとしています。必要なトークンの取得はOKです:
WebClient client = new WebClient() { Credentials = new NetworkCredential(UserName, pass) };
StreamReader Reader = new StreamReader(client.OpenRead("http://localhost:" + port + "/gui/token.html"));
string token = Reader.ReadToEnd();
token = token.Split('>')[2].Split('<')[0];
// token is now something like 3LemfrO_-A-SNBXlnQ2QcQWTYydx7qOqKb1W1S54JJW74Ly3EYGgu0xQSU4AAAAA
しかし、トレントのリストを取得するためにそれを使用しようとすると、次のようになります。
Reader = new StreamReader(client.OpenRead("http://localhost:" + port + "/gui/?list=1&token=" + token));
私が得るのは「エラー400不正な要求」だけです。
トークンを手動で取得しようとしました。ブラウザページで「http:// localhost:30303 / gui /?list = 1&token = 3LemfrO_-A-SNBXlnQ2QcQWTYydx7qOqKb1W1S54JJW74Ly3EYGgu0xQSU4AAAAA」が正常に開きますが、変数のない同じリンクを持つC#ではエラー400が発生します。トークン認証をオフにすると、WebClientはページを完全にロードする場合としない場合があります
"&token=3LemfrO_-A-SNBXlnQ2QcQWTYydx7qOqKb1W1S54JJW74Ly3EYGgu0xQSU4AAAAA"
ただし、トークン認証はデフォルトで有効になっているため、私のアプリやすべてのアプリで使用する必要があります。そして、はい、WebRequest/HttpWebRequestも役に立ちませんでした。
PS私の英語は申し訳ありませんが、私はそれを正しく機能させることができませんでした