通过表单发布程序登录,并使用凭据进行另一个请求

本文关键字:请求 另一个 登录 表单 布程序 程序 | 更新日期: 2023-09-27 18:25:02

我需要通过c#中的表单post登录,但随后我需要使用在下一个请求中设置的cookie来访问安全数据。

最初的部分很简单:

string URLAuth = "https://mywservice.com/login";
            WebClient webClient = new WebClient();
            NameValueCollection formData = new NameValueCollection();
            formData["Username"] = "email@domain.com";
            formData["Password"] = "password";
            byte[] responseBytes = webClient.UploadValues(URLAuth, "POST", formData);
            string resultAuthTicket = Encoding.UTF8.GetString(responseBytes);
            webClient.Dispose();

我有这个部分在工作,但我如何在下一个请求中存储和使用它?

通过表单发布程序登录,并使用凭据进行另一个请求

我认为WebClient是错误的选择;我会使用System.Net.HttpWebRequest。这将使您能够直接访问凭据帖子响应中返回的标头,然后您可以将任何标头(包括cookie标头)复制到下一个HttpWebRequest上,以获得您真正想要的内容。