Если запрос был успешным (200), и вы получили страницу HTML для «Неверные учетные данные», то ваш код, который выполняет запрос, должен быть в порядке, и проблема связана с учетными данными.Как я уже сказал в своем первом комментарии, не сериализуйте параметры в JSON, вместо этого закодируйте их URL-кодом:
parameters["userName"] = HttpUtility.UrlEncode("myusername");
parameters["pwd"] = HttpUtility.UrlEncode("mypass");
parameters["loginTrue"] = HttpUtility.UrlEncode("extravalue");
Это стандартный способ, который работает с записью параметров непосредственно в поток запросов,или с утилитой типа StringContent
.Однако, поскольку вы используете служебный класс FormUrlEncodedContent
, он кодирует их для вас, поэтому вам не нужно это делать.В этом случае просто присвойте их непосредственно как строку:
parameters["userName"] = "myusername";
parameters["pwd"] = "mypass";
parameters["loginTrue"] = "extravalue";