NET 4.5 HttpClient все равно отправляет cookie (несмотря на измененный домен)
Я создал HttpClient в C#
Client = new HttpClient(handler);
Обработчик это
var handler = new HttpClientHandler
{
CookieContainer = CookieContainer,
AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate
};
Я отправляю несколько запросов на сайт, скажем, это xyzevents.com. Я получаю свои ответы нормально, я храню некоторые куки, которые я получаю от команд "Set Cookie:*", все работает хорошо.
Однако после этого я пытаюсь общаться с сайтом xyz.com. Для этого я должен отправить свои запросы, используя файлы cookie, которые я хранил на xyzevents.com ранее. HttpClient не может этого сделать, потому что видит, что хост отличается от xyzevents.com.
Есть ли способ обойти эту проверку и отправить мои запросы без проблем?
1 ответ
Я не думаю, что в любом случае "отключить" эту проверку. Я думаю, что это HttpClient
в итоге решается, какие куки следует отправлять, а не контейнер. И, наконец, риски безопасности, которые могут возникнуть при отправке случайных файлов cookie в любом месте, довольно велики.
При этом вы можете легко просмотреть все файлы cookie, полученные от xyz.com
создайте их вручную с измененным доменом, но с теми же значениями. Затем добавьте их в новую коллекцию, которая отправляется xyzevents.com
,