Добрый день!
Соединяюсь с сайтом посредством httpwebrequest.
Когда нет прокси то всё ок, если у пользователя выход в интернет через прокси то запросы не работают. Попробовал даже сделать чтобы пользователь сам забивал свои настройки но тоже не получается.
Делаю вот так:
строка запроса
public string send(string url, string par)
{
String secondStepForm3 = par;
HttpWebRequest request3 = (HttpWebRequest)WebRequest.Create(url);
request3.UserAgent = "Opera/9.80";
request3.Method = "POST";
request3.ContentType = "application/x-www-form-urlencoded";
byte[] EncodedPostParams3 = Encoding.Default.GetBytes(secondStepForm3);
try
{
request3.ContentLength = EncodedPostParams3.Length;
request3.GetRequestStream().Write(EncodedPostParams3, 0, EncodedPostParams3.Length);
request3.GetRequestStream().Close();
HttpWebResponse response = (HttpWebResponse)request3.GetResponse();
string lol = new StreamReader(response.GetResponseStream(), Encoding.UTF8).ReadToEnd();
return lol;
}
catch (Exception)
{
string lol = "NI";
return lol;
}
}
попытка запроса
string Auth = send("адрес сайта", "login=" + t_login + "&pass=" + t_password);
string LoginStatus = Auth;
// Делим строку по разделителю
String[] AuthResponse = LoginStatus.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
LoginStatus = AuthResponse[0];
при загрузке формы если пользователь вписал айпи и порт то используем прокси
private void authForm_Load(object sender, EventArgs e)
{
if (Properties.Settings.Default.proxyIP != "")
{
string proxyIp = Properties.Settings.Default.proxyIP;
string proxyPort = Properties.Settings.Default.proxyPort;
string urlProxy = "http://" + proxyIp + ":" + proxyPort + "/";
WebRequest.DefaultWebProxy = new WebProxy("http://" + proxyIp + ":" + proxyPort + "/", true);
}
}
При попытке соединения приложение возвращает NI, т.е. нет соединения. Что я делаю не так?
В идеале бы конечно чтобы настройки из ИЕ брались. Но хотя бы так)