POST запрос на c#

  • Автор темы Автор темы Ivanych
  • Дата начала Дата начала

Ivanych

Client
Регистрация
15.09.2020
Сообщения
55
Реакции
7
Баллы
8
Привет, нужно сделать post запрос на c#. Пересмотрел тут темы по данному вопросу, но я не пойму что куда вставлять
Помогите составить запрос.
Вот данные

POST /s9/index.php?page=gamelogin&username=&ver=0.1&tz=4&lang=ru&device_id=3cbf6d555c7aa80093b917cce065f48b&device_name=SM%2DG930K HTTP/1.1


Content-Type: application/x-www-form-urlencoded; charset=UTF-8
User-Agent: android
clientv: 123
Host: 74.207.248.244
Connection: Keep-Alive
Accept-Encoding: gzip, deflate
Content-Length: 43

&verifyKey=ec8d1366942026215f5753bf497829d1 //данные

Вот такой должен быть примерно ответ

{"user":"guest468862","ppy_id":"468862","ssid":"tgo3skuomapqvfft6jejmll4k3","status":"new","lang":"ru"}
 
Привет, нужно сделать post запрос на c#. Пересмотрел тут темы по данному вопросу, но я не пойму что куда вставлять
Помогите составить запрос.
Вот данные

POST /s9/index.php?page=gamelogin&username=&ver=0.1&tz=4&lang=ru&device_id=3cbf6d555c7aa80093b917cce065f48b&device_name=SM%2DG930K HTTP/1.1


Content-Type: application/x-www-form-urlencoded; charset=UTF-8
User-Agent: android
clientv: 123
Host: 74.207.248.244
Connection: Keep-Alive
Accept-Encoding: gzip, deflate
Content-Length: 43

&verifyKey=ec8d1366942026215f5753bf497829d1 //данные

Вот такой должен быть примерно ответ

{"user":"guest468862","ppy_id":"468862","ssid":"tgo3skuomapqvfft6jejmll4k3","status":"new","lang":"ru"}
C#:
Развернуть Свернуть Копировать
string content = string.Join("=",new[]{"&verifyKey","ec8d1366942026215f5753bf497829d1"});
List<string> list = new List<string>();
    list.Add(string.Join("=",new[]{"page","gamelogin"}));
    list.Add(string.Join("=",new[]{"username",""}));
    list.Add(string.Join("=",new[]{"ver","0.1"}));
    list.Add(string.Join("=",new[]{"tz","4"}));
    list.Add(string.Join("=",new[]{"lang","ru"}));
    list.Add(string.Join("=",new[]{"device_id","3cbf6d555c7aa80093b917cce065f48b"}));
    list.Add(string.Join("=",new[]{"device_name","SM%2DG930K"}));

List<string> headers = new List<string>();
//    headers.Add(string.Join(": ",new[]{"Content-Type","application/x-www-form-urlencoded; charset=UTF-8"}));
    headers.Add(string.Join(": ",new[]{"User-Agent","android"}));
    headers.Add(string.Join(": ",new[]{"clientv","123"}));
    headers.Add(string.Join(": ",new[]{"Host","74.207.248.244"}));
    headers.Add(string.Join(": ",new[]{"Connection","Keep-Alive"}));
    headers.Add(string.Join(": ",new[]{"Accept-Encoding","gzip, deflate"}));
    headers.Add(string.Join(": ",new[]{"Content-Length",content.Length.ToString()}));
    
string url = string.Join("?", new[]{@"http://74.207.248.244/s9/index.php",string.Join("&", list)});
string proxy = "";
string UserAgent = project.Profile.UserAgent;
string post = ZennoPoster.HTTP.Request(
  method: ZennoLab.InterfacesLibrary.Enums.Http.HttpMethod.POST,
  url: url,
  content: content,
  contentPostingType: @"application/x-www-form-urlencoded",
  proxy: proxy,
  Encoding: "UTF-8",
  respType:ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.HeaderAndBody,
  Timeout: 30000,
  Cookies: string.Empty,
  UserAgent: UserAgent,
  UseRedirect: false,
  MaxRedirectCount: 0,
  AdditionalHeaders: headers.ToArray(),
  DownloadPath: null,
  UseOriginalUrl: true,
  throwExceptionOnError: true,
  cookieContainer: project.Profile.CookieContainer,
  removeDefaultHeaders: true // Удаляем стандартные заголовки
);   
return post;
 
  • Спасибо
Реакции: Dorian_Gray и Ivanych
C#:
Развернуть Свернуть Копировать
string content = string.Join("=",new[]{"&verifyKey","ec8d1366942026215f5753bf497829d1"});
List<string> list = new List<string>();
    list.Add(string.Join("=",new[]{"page","gamelogin"}));
    list.Add(string.Join("=",new[]{"username",""}));
    list.Add(string.Join("=",new[]{"ver","0.1"}));
    list.Add(string.Join("=",new[]{"tz","4"}));
    list.Add(string.Join("=",new[]{"lang","ru"}));
    list.Add(string.Join("=",new[]{"device_id","3cbf6d555c7aa80093b917cce065f48b"}));
    list.Add(string.Join("=",new[]{"device_name","SM%2DG930K"}));

List<string> headers = new List<string>();
//    headers.Add(string.Join(": ",new[]{"Content-Type","application/x-www-form-urlencoded; charset=UTF-8"}));
    headers.Add(string.Join(": ",new[]{"User-Agent","android"}));
    headers.Add(string.Join(": ",new[]{"clientv","123"}));
    headers.Add(string.Join(": ",new[]{"Host","74.207.248.244"}));
    headers.Add(string.Join(": ",new[]{"Connection","Keep-Alive"}));
    headers.Add(string.Join(": ",new[]{"Accept-Encoding","gzip, deflate"}));
    headers.Add(string.Join(": ",new[]{"Content-Length",content.Length.ToString()}));
   
string url = string.Join("?", new[]{@"http://74.207.248.244/s9/index.php",string.Join("&", list)});
string proxy = "";
string UserAgent = project.Profile.UserAgent;
string post = ZennoPoster.HTTP.Request(
  method: ZennoLab.InterfacesLibrary.Enums.Http.HttpMethod.POST,
  url: url,
  content: content,
  contentPostingType: @"application/x-www-form-urlencoded",
  proxy: proxy,
  Encoding: "UTF-8",
  respType:ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.HeaderAndBody,
  Timeout: 30000,
  Cookies: string.Empty,
  UserAgent: UserAgent,
  UseRedirect: false,
  MaxRedirectCount: 0,
  AdditionalHeaders: headers.ToArray(),
  DownloadPath: null,
  UseOriginalUrl: true,
  throwExceptionOnError: true,
  cookieContainer: project.Profile.CookieContainer,
  removeDefaultHeaders: true // Удаляем стандартные заголовки
);  
return post;
Спасибо, завтра испытаю
 
C#:
Развернуть Свернуть Копировать
string content = string.Join("=",new[]{"&verifyKey","ec8d1366942026215f5753bf497829d1"});
List<string> list = new List<string>();
    list.Add(string.Join("=",new[]{"page","gamelogin"}));
    list.Add(string.Join("=",new[]{"username",""}));
    list.Add(string.Join("=",new[]{"ver","0.1"}));
    list.Add(string.Join("=",new[]{"tz","4"}));
    list.Add(string.Join("=",new[]{"lang","ru"}));
    list.Add(string.Join("=",new[]{"device_id","3cbf6d555c7aa80093b917cce065f48b"}));
    list.Add(string.Join("=",new[]{"device_name","SM%2DG930K"}));

List<string> headers = new List<string>();
//    headers.Add(string.Join(": ",new[]{"Content-Type","application/x-www-form-urlencoded; charset=UTF-8"}));
    headers.Add(string.Join(": ",new[]{"User-Agent","android"}));
    headers.Add(string.Join(": ",new[]{"clientv","123"}));
    headers.Add(string.Join(": ",new[]{"Host","74.207.248.244"}));
    headers.Add(string.Join(": ",new[]{"Connection","Keep-Alive"}));
    headers.Add(string.Join(": ",new[]{"Accept-Encoding","gzip, deflate"}));
    headers.Add(string.Join(": ",new[]{"Content-Length",content.Length.ToString()}));
   
string url = string.Join("?", new[]{@"http://74.207.248.244/s9/index.php",string.Join("&", list)});
string proxy = "";
string UserAgent = project.Profile.UserAgent;
string post = ZennoPoster.HTTP.Request(
  method: ZennoLab.InterfacesLibrary.Enums.Http.HttpMethod.POST,
  url: url,
  content: content,
  contentPostingType: @"application/x-www-form-urlencoded",
  proxy: proxy,
  Encoding: "UTF-8",
  respType:ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.HeaderAndBody,
  Timeout: 30000,
  Cookies: string.Empty,
  UserAgent: UserAgent,
  UseRedirect: false,
  MaxRedirectCount: 0,
  AdditionalHeaders: headers.ToArray(),
  DownloadPath: null,
  UseOriginalUrl: true,
  throwExceptionOnError: true,
  cookieContainer: project.Profile.CookieContainer,
  removeDefaultHeaders: true // Удаляем стандартные заголовки
);  
return post;
Еще вопрос, что и куда надо дописать чтобы ответ сервера сохранять в переменную .
 
Еще вопрос, что и куда надо дописать чтобы ответ сервера сохранять в переменную .
так ответ и так сохраняется в переменную post, и так же можете его записать в любую другую переменную.
 
  • Спасибо
Реакции: Ivanych
Кубик работает, примерно понятно куда и что писать, за это огромное спасибо, но результат запроса с ошибкой, может кто поможет это реализовать и сколько это будет стоить?
Приложение андроид, нужно регистрировать новые аккаунты
 
Благодарить можете нажимая кнопку спасибо с правого края сообщения. :-)
Кубик работает, примерно понятно куда и что писать, за это огромное спасибо, но результат запроса с ошибкой, может кто поможет это реализовать и сколько это будет стоить?
Результат запроса может выдавать ошибку по разным причинам. Может не все параметры или заголовки передали, слишком частые запросы, блокировка айпи или еще что то.
Приложение андроид, нужно регистрировать новые аккаунты
Приложения бывают разные, как и сложность их автоматизации.
Обратите внимание на мой конструктор. Можно протестировать без оплаты около недели.
 
  • Спасибо
Реакции: Ivanych

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)