Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用cookie发送POST请求_C#_Post_Cookies_Login_Webrequest - Fatal编程技术网

C# 使用cookie发送POST请求

C# 使用cookie发送POST请求,c#,post,cookies,login,webrequest,C#,Post,Cookies,Login,Webrequest,我想使用以下帖子通过WebRequest发送帖子请求: POST https://olui2.fs.ml.com/ClientFederation/LoginValidateUser.asmx/ValidatePassword HTTP/1.1 Host: olui2.fs.ml.com Connection: keep-alive Content-Length: 76 Origin: https://olui2.fs.ml.com User-Agent: Mozilla/5.0 (Window

我想使用以下帖子通过WebRequest发送帖子请求:

POST https://olui2.fs.ml.com/ClientFederation/LoginValidateUser.asmx/ValidatePassword HTTP/1.1
Host: olui2.fs.ml.com
Connection: keep-alive
Content-Length: 76
Origin: https://olui2.fs.ml.com
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.103 Safari/537.36
Content-Type: application/json; charset=UTF-8
Cache-Control: no-cache
X-Requested-With: XMLHttpRequest
__PageIdHeader: jclrKnUbxSsmkPo01YGJFc4O9l3kt79RUdjpUT9mB3E=
X-Bear: jclrKnUbxSsmkPo01YGJFc4O9l3kt79RUdjpUT9mB3E=
Accept: */*
Referer: https://olui2.fs.ml.com/login/ConfirmIdentity.aspx
Accept-Encoding: gzip,deflate
Accept-Language: en-US,en;q=0.8
Cookie: pxv=da927b45-fda7-440d-893e-5058b60053b1; __g_u=277817800941577_1_1_1_5_1422571043310_1; __g_c=a%3A0; pxss=392613e3-6d74-4947-b707-8b6ce7a1df8e; FSDSession=true; Bear=jclrKnUbxSsmkPo01YGJFc4O9l3kt79RUdjpUT9mB3E=; NSC_pmvj2-NzNfssjmm-wt=9fea903a0000; pxsq=19

{"username":"username","rememberMe":false,"password":"mypassword","data":null}
{}代表JSON。以下是我目前掌握的代码:

        //Get the variables
        string url = "http://olui.fs.ml.com/Login/Login.aspx";
        string userName = loginUN;
        string userPassword = loginPW;

        //Connection Parameters
        string method = "POST";

        HttpWebRequest webReq = (HttpWebRequest)WebRequest.Create("https://olui2.fs.ml.com/ClientFederation/LoginValidateUser.asmx/ValidatePassword");
        webReq.Connection = "keep-alive";
        webReq.ContentLength = 76;
        webReq.UserAgent = " Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.103 Safari/537.36";
        webReq.ContentType = "application/json; charset=UTF-8";
        webReq.Accept = "*/*";
        webReq.Referer = " https://olui2.fs.ml.com/login/ConfirmIdentity.aspx";
我不确定如何设置登录时需要使用的cookie。其次,我在我的
WebRequest
中找不到请求的几个部分。E接受语言、缓存控制、X请求和所有部分


我不确定的另一件大事是用户名和密码的JSON。

在一个问题中,你有多个挑战。也许最好把你的问题分成多个问题

无论如何,我在这里集中讨论你第一次提到的饼干挑战。
HttpWebRequest
组件具有
CookieContainer
属性。您需要创建cookie容器的实例并将其附加到该特定属性。例如:

HttpWebRequest webReq = ...
webReq.CookieContainer = new CookieContainer();
webReq.CookieContainer.Add(new Cookie("name", "value", "/", yourDomain));
// etc.

这里有一个很好的博客,可能会有更大的帮助:

尝试以编程方式登录美国银行网站,充其量是一个糟糕的想法,最糟糕的是,听起来有点可疑。我只是尝试为一个客户自动化这个过程。我一直在通过Java使用Selenium,但一直在寻找一个没有所有日志记录的更快的过程。没有恶意那会帮上大忙的!先生,你是个高尚的人!我将把这个问题分成几个没有回答的部分,并再次为反弹做好准备。