Как добавить Cookies в заголовки клиента Http из списка пар имя-значение - PullRequest
0 голосов
/ 05 февраля 2020

Я должен использовать HTTP-клиент для отправки некоторых данных x- www-form-urlencoded на веб-сервер, если я делаю это вручную через веб-браузер, это всегда работает, но когда я пытался использовать HTTP-клиент, чтобы сделать то же самое Я всегда обнаруживал, что больше половины файлов cookie отсутствуют. Например, из инструментов разработчика MS Edge видно, что файлы cookie содержат около 30 файлов cookie, все они имеют одинаковое доменное имя, один и тот же путь (/) и 25 из них имеют одинаковое время истечения; только 5 из них являются сессионными спецификациями c, которые я могу получить этими сессионными спецификациями c куки с помощью текстового браузера; что касается остальных 25 файлов cookie, я вижу, что их имена всегда совпадают, срок действия истекает примерно через месяц с сегодняшнего дня. Я понимаю, почему в веб-браузере так много файлов cookie, потому что на веб-сайте работает довольно много файлов JavaScript (всего около 70 js файлов), и каждый из файлов JavaScript может устанавливать разные файлы cookie. Чтобы использовать HTTP-клиент для отправки данных на веб-сервер, я думаю, что я могу использовать C#, чтобы сгенерировать эти 25 куки-файлов из списка пары имя-значение и установить тот же домен (например: www.testsite.com) и тот же путь (/) и то же время истечения (через месяц). Я могу использовать код C# для проверки некоторых пользовательских заголовков на http://scooterlabs.com/echo Например: (C# RestSharp)

var client = new RestClient("http://scooterlabs.com/echo");
var request = new RestRequest(Method.GET);
request.AddHeader("geoipcountrycode", "US");
request.AddHeader("time", "1579357172779");
IRestResponse response = client.Execute(request);

Но как я могу добавить список имен пары значений в виде файлов cookie и установите файлы cookie для HTTP-клиента, чтобы я мог использовать HTTP-клиент для публикации данных? Или как я могу преобразовать список пар «имя-значение» в список того же домена, того же пути, тех же файлов cookie с истекшим сроком действия и добавить в другие 5 файлов cookie с указанием сеанса c, которые я могу получить из текстового браузера? Но текстовый браузер не может запустить JavaScript, и я не думаю, что запуск JavaScript необходим для получения файлов cookie. Как и в приведенном выше примере, две пары значений имени: [{'name': 'geoipcountrycode', 'value': 'US'}, {'name': 'time', 'value': '1579357172779'}]; Пожалуйста, совет, спасибо,

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...