Я пытаюсь получить список торрентов из uTorrent, используя Web API . Получение требуемого токена идет O.K.:
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 загрузит страницу идеально с * 1012 и без *
"&token=3LemfrO_-A-SNBXlnQ2QcQWTYydx7qOqKb1W1S54JJW74Ly3EYGgu0xQSU4AAAAA"
но авторизация токена включена по умолчанию, поэтому my и любое приложение должно его использовать.
И да, WebRequest / HttpWebRequest также не помогли.
P.S. извините за мой английский, я так и не смог заставить его работать правильно