I am trying to authorize in a Cyrillic domain using WebClient. Authorization goes through several stages with redirection between normal and punicode domains. The problem is that HttpWebRequest cannot store cookies in the designated CookieContaier if it was set by the punycode domain. For example, this code will raise a CookieException.
var cookie = new Cookie("test_cookie", "test_value", "/", ".xn----7sbcca6bi0ak9b0a6f.xn--p1ai"); var container = new CookieContainer().Add(cookie);
The problem is compounded by the fact that the answer, which sets the redirect of cookies to another page, i.e. after WebClient.UploadValues (...) has been executed, there is no cookie information in WebClient.ResponseHeaders.
The following is the normal authorization process (using a browser).
Method Result Received Type URL RedirectURL Set-Cookie POST 302 1,18 K text/html http://xn----7sbcca6bi0ak9b0a6f.xn--p1ai/admin/login http://xn----7sbcca6bi0ak9b0a6f.xn--p1ai/admin sess_id=.......; expires=Mon, 06-Jun-2016 07:20:57 GMT; Max-Age=31536000; path=/; domain=.xn----7sbcca6bi0ak9b0a6f.xn--p1ai; httponly GET 302 722 text/html http://xn----7sbcca6bi0ak9b0a6f.xn--p1ai/admin /admin/orders GET 200 200,00 K text/html http://xn----7sbcca6bi0ak9b0a6f.xn--p1ai/admin/orders
Is there a workaround?
source share