@CSharpChatЭта группа больше не существует

Страница 431 из 1888
Му
27.02.2017
15:55:27
что значит по голому http?
значит что его можно легко угнать

Илья
27.02.2017
15:55:42
поставьте фидлер и посмотрите, что он на самом деле отправляет и сравните со своим запросом, который работает

Google
Ramil
27.02.2017
15:55:45
значит что его можно легко угнать
это тестовый аккаунт, мне без разницы

Axm
27.02.2017
15:56:22
используешь WebRequest в 2017 году

Му
27.02.2017
15:56:37
за это где-то умирает котёнок

на каждый твой F5

Artemko
27.02.2017
15:57:10
еще и без using-ов

ни тебе Flush, ни Dispose

Ramil
27.02.2017
15:57:42
Му
27.02.2017
15:57:51
и без асинков

Artemko
27.02.2017
15:57:55
http://stackoverflow.com/a/36727718/55209

Axm
27.02.2017
15:58:34
чем он плох?
это легаси. и попробуй поставить request.ContentLength = prmBytes.Length

Му
27.02.2017
16:00:34
в общем присылай скриншот своего запроса, и запроса хрома

Google
Му
27.02.2017
16:00:43
так можно долго гадать

Илья
27.02.2017
16:00:58
Вобще, если там rest api, рекомендую RestSharp: RestSharp removes the following pain points: - Quirks in .NET's HTTP classes (basic authentication is broken, error handling for non-200 responses, etc) - Automatic deserialization from response data to POCOs - Simplified API (request.AddParameter(name, value) instead of manually compiling request bodies - Simplified request/response semantics, especially for async (however, it's opinionated for async and may not meet everyone's needs, in which case I would also suggest evaluating Hammock)

Axm
27.02.2017
16:01:39
401
прости, я не Ванга. могу только предположить, что проблема в кодировке.

RestSharp клевый, кстати. единственное, у него есть странная особенность делать неотключаемый urlencode для всех параметров.

Ramil
27.02.2017
16:03:26
щас сделаю попытку со всеми вашими советами и напишу, что получилось

Илья
27.02.2017
16:04:45
чем он плох?
Вот статейка на тему WebClient vs HttpClient vs HttpWebRequest vs RestSharp http://www.diogonunes.com/blog/webclient-vs-httpclient-vs-httpwebrequest

Slava
27.02.2017
16:07:41
Чуть не подавился: HttpClient - no progress reporting for download

Ramil
27.02.2017
16:11:18
http://stackoverflow.com/a/36727718/55209
сделал так, получил ту же ошибку Неверный пароль

Artemko
27.02.2017
16:11:38
Чуть не подавился: HttpClient - no progress reporting for download
это еще не всё: https://aspnetmonsters.com/2016/08/2016-08-27-httpclientwrong/

сделал так, получил ту же ошибку Неверный пароль
проверяй что уходит в браузере, либо скрытое поле, либо хеш на клиенте, либо вообще все передается в гет-параметрах, либо комбинация этих факторов

Ivan
27.02.2017
16:17:24
Ramil
27.02.2017
16:25:59
что это может значить?

Му
27.02.2017
16:26:11
покажи

бля

Vasily
27.02.2017
16:27:33
Кодировку надо явно в content-type указать,или ascii использовать

Ramil
27.02.2017
16:28:24
бля
можно подробнее? )

Му
27.02.2017
16:28:43
вот именно можно подробнее

покажи полностью запрос\ответ фидлера

твой и хрома

Google
Му
27.02.2017
16:29:07
ёпта

найди 10 отличий и подгони под хром

если отличий не видно, используюй беёндкомпер или подобное

Му
27.02.2017
16:31:06
нажми сверху raw

Ramil
27.02.2017
16:31:39
POST http://my.drom.ru/sign?sign=the-tester%40mail.ru&password=73z3fuza HTTP/1.1 Host: my.drom.ru Connection: keep-alive Content-Length: 0 Cache-Control: no-cache Origin: chrome-extension://fhbjgbiflinjbdggehcddcbncdddomop User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36 Postman-Token: 421d8d44-6816-45dc-ce0d-b7ec453cecf7 Accept: */* DNT: 1 Accept-Encoding: gzip, deflate Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4 Cookie: ring=a24fdb3522245cceadb19247628cb3ec; logged_in=1488209408; uid=22292217%3A783b0afa6f6eb318dd510a441b0162da; login=the-tester%40mail.ru; user_condition_bzr20092=0; user_condition_ios_test=0; PHPSESSID=1e882f760c206aa30f7e531941b5d866; PHPSESSID=a24fdb3522245cceadb19247628cb3ec; boobs=923415ad84fec88750b1cbc364674439421088abb95549780a3887eaa0263480u79cee6; pony=4e7a6b344d6a67794d673d3duc7628683ca5038071a5d4409065b61c8

блин

http://pastebin.com/NjSzjtvE

Му
27.02.2017
16:33:14
у тебя параметры передаются в строке запроса, а ты в своём коде передаёшь через тело

с тебя 5 тыс.

Ramil
27.02.2017
16:33:25
POST http://my.drom.ru/sign HTTP/1.1 Content-Type: application/x-www-form-urlencoded Host: my.drom.ru Content-Length: 77 Expect: 100-continue Connection: Keep-Alive farpostOnly=1&login_by_password=1&sign=the-tester%40mail.ru&password=73z3fuza

Ramil
27.02.2017
16:33:38
вот с проги. уже вижу что что то не то

с тебя 5 тыс.
поверь я и через строку пробовал

Му
27.02.2017
16:34:15
ага.. а я британская королева

Vyacheslav
27.02.2017
16:34:24
блин
` вот таким символом в количестве 3 штук нужно обернуть текст

получится вот так

Ramil
27.02.2017
16:34:51
```POST http://my.drom.ru/sign HTTP/1.1 Content-Type: application/x-www-form-urlencoded Host: my.drom.ru Content-Length: 77 Expect: 100-continue Connection: Keep-Alive farpostOnly=1&login_by_password=1&sign=the-tester%40mail.ru&password=73z3fuza

POST http://my.drom.ru/sign HTTP/1.1 Content-Type: application/x-www-form-urlencoded Host: my.drom.ru Content-Length: 77 Expect: 100-continue Connection: Keep-Alive farpostOnly=1&login_by_password=1&sign=the-tester%40mail.ru&password=73z3fuza

Vyacheslav
27.02.2017
16:35:08
молодец

Google
Ramil
27.02.2017
16:35:32
ага.. а я британская королева
щас фиддлер тоже сниму с гетом)

ага.. а я британская королева
GET http://my.drom.ru/sign?sign=the-tester@mail.ru&password=73z3fuza HTTP/1.1 Content-Type: application/x-www-form-urlencoded Host: my.drom.ru Connection: Keep-Alive

Му
27.02.2017
16:37:05
зачем ты пробуешь разные методы?

сделай так же, как делает хром

Илья
27.02.2017
16:37:40
эмм, у тебя же пост был, зачем гет-то?

Admin
ERROR: S client not available

Ramil
27.02.2017
16:37:41
а что значит в респонсе Vary: Accept-Encoding ?

эмм, у тебя же пост был, зачем гет-то?
и пост щас сделал, то же самое

для разнообразия

Му
27.02.2017
16:39:43
:) сделай ещё PUT

на всякий случай

Илья
27.02.2017
16:43:44
1. используй post 2. параметры через строку, а не через тело 3. убери Content-Type: application/x-www-form-urlencoded - его же в удачном примере нет

Artemko
27.02.2017
16:46:38
Если не поможет, делай гет страницы входа, собери оттуда куки и передай их с постом

Му
27.02.2017
16:46:49
возможно нужно ещё хедер Origin: chrome-extension://fhbjgbiflinjbdggehcddcbncdddomop передавать

Artemko
27.02.2017
16:48:58
Ramil
27.02.2017
16:50:10
1. используй post 2. параметры через строку, а не через тело 3. убери Content-Type: application/x-www-form-urlencoded - его же в удачном примере нет
1.есть 2.есть 3. без него 401. оставил POST http://my.drom.ru/sign?sign=the-tester%40mail.ru&password=73z3fuza HTTP/1.1 Content-Type: application/x-www-form-urlencoded Host: my.drom.ru Connection: Keep-Alive

что интересно, моя прога порождает в фиддлере 1 запрос, а постман несколько



Илья
27.02.2017
16:53:09
Кажется, понял

Google
Илья
27.02.2017
16:54:02
Постман делает авторизацию в два этапа 1. пост pass + login 2. генерит кукисы и обращается уже с куками = авторизован

Ramil
27.02.2017
16:54:04
может быть мне надо взять куки с первого запроса и выполнить остальные с ним?

а что за Tunnel to my.drom.ru:443?

Илья
27.02.2017
16:54:57
а что за Tunnel to my.drom.ru:443?
норм, это сам фиддлер

anton
27.02.2017
16:55:05
блин, парни, вы кажется загоняетесь

http://pastebin.com/NjSzjtvE
тут же виден ответ на post

там ответ в куку пишется...

значит все след. запросы эта кука тоже гуляет

Ramil
27.02.2017
16:56:09
ща затестю

Илья
27.02.2017
16:56:17
ну собственно, да

Ramil
27.02.2017
17:00:28
есть ли простой способ переввести CookieCollection в CookieContainer?

anton
27.02.2017
17:00:43
если ничего не путаю, тебе нужно создавать экземпляр CookieContainer писать туда ключ-значение из ответа на авторизацию затем при след. запросе передавать куку указывая её request.CookieContainer = {твоя кука контейнер}

есть ли простой способ переввести CookieCollection в CookieContainer?
из запроса первого забираешь коллекцию?

Ramil
27.02.2017
17:01:39
из запроса первого забираешь коллекцию?
да, забираю и пытаюсь request.CookieContainer = response.Cookies

anton
27.02.2017
17:01:41
создаешь куки контейнер request.CookieContainer = new CookieContainer() и добавляешь туда куки коллекцию request.CookieContainer.Add(response.Cookies); response.Cookies - твоя куки коллекция из первого запроса

обязательно только сначала для нового реквеста создай инстанс CookieContainer а то нулл референс поймаешь ;)

Страница 431 из 1888

Эта группа больше не существует Эта группа больше не существует