.NET 4.x Как отправить POST запрос с параметрами и куками? - C#
Формулировка задачи:
Пытаюсь так
ошибка
Cannot create an instance of the abstract class or interface 'System.Net.WebRequest'
Почему она возникает? Кто-нибудь поможет помочь дописать код, чтобы отправлялся запрос на domain.com вместе с моими куками и 2-мя параметрами
1)id его значение - 351059167
и
2)sessionid его значение у меня содержится в строке session
Листинг программы
- //...
- private void sendRequest()
- {
- Cookie cookie1 = new Cookie();
- cookie1.Name = "name1";
- cookie1.Value = kuka2;
- cookie1.Domain = "domain.com";
- Cookie cookie2 = new Cookie();
- cookie2.Name = "name2";
- cookie2.Value = kuka1;
- cookie2.Domain = "domain.com";
- Cookie cookie3 = new Cookie();
- cookie3.Name = "name3";
- cookie3.Value = sessionID;
- cookie3.Domain = "domain.com";
- CookieContainer cont = new CookieContainer();
- cont.Add(cookie1);
- cont.Add(cookie2);
- cont.Add(cookie3);
- //ниже ошибка
- WebRequest rec = new WebRequest();
- }
Решение задачи: «.NET 4.x Как отправить POST запрос с параметрами и куками?»
textual
Листинг программы
- public bool GetPayInfo(ref Dictionary<string, PayInfo> payInfo)
- {
- HttpWebRequest request;
- HttpWebResponse responce = null;
- StreamReader responceStream = null;
- try
- {
- request = (HttpWebRequest)WebRequest.Create(@"https://ssl.coinmine.pw/api.php");
- request.Method = "POST";
- request.ContentType = "application/x-www-form-urlencoded";
- byte[] binData = Encoding.UTF8.GetBytes("method=payinfo&apikey=" + regInfo.CMinePayAPIKey + "&account=" + regInfo.CMineLogin);
- request.ContentLength = binData.Length;
- using (Stream postStream = request.GetRequestStream())
- {
- postStream.Write(binData, 0, binData.Length);
- postStream.Close();
- }
- responce = (HttpWebResponse)request.GetResponse();
- responceStream = new StreamReader(responce.GetResponseStream());
- string responceString = responceStream.ReadToEnd();
- if (responceString.Length < 24)
- {
- This.WriteToLog("Ошибка сервера 'ssl.coinmine.pw'. Проверьте настройки аккаунта, либо состояние счета.");
- return false;
- }
- if (!ResponceError(responceString)) return false;
- payInfo = (Dictionary<string, PayInfo>)JsonConvert.DeserializeObject<Dictionary<string, PayInfo>>(responceString);
- return true;
- }
- catch (Exception error) { This.WriteToLog(error.ToString()); return false; }
- finally
- {
- if (responce != null) responce.Close();
- if (responceStream != null) responceStream.Close();
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д