如何使用c#webrequest将带有cookie的json发布到服务器?

时间:2017-01-21 12:56:06

标签: c# json cookies

我是c#的新手,想要使用以下代码向服务器发送json帖子:

var httpWebReques = (HttpWebRequest) WebRequest.Create(@"http://myDomain/api/FileCommand/AddGig ");
            httpWebReques.ContentType = "application/json";
            httpWebReques.Method = "POST";
            using (var streamWriter=new StreamWriter(httpWebReques.GetRequestStream()))
            {
                JObject obj = JObject.FromObject(new
                {
                    PhoneNumber= phoneNumber,
                    TrafficGigCount="1",
                    PaymentAmountRial="2000",
                    PaymentTrackingNo="123434"
                });
                string json = obj.ToString(); //"{\"PhoneNumber\":\""+phoneNumber+"\"," + "\"TrafficGigCount\":\"1\","+ "\"PaymentAmountRial\":\"1000\","+ "\"PaymentTrackingNo\":\"1254\"}";
                streamWriter.Write(obj);
                streamWriter.Flush();
                streamWriter.Close();
            }
            var httpResponse = (HttpWebResponse) httpWebReques.GetResponse();
            using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
            {
                var result = streamReader.ReadToEnd();
            }


一切都好,现在想用这段代码发送服务器cookie:

    httpWebReques.CookieContainer = new CookieContainer();
                httpWebReques.CookieContainer.SetCookies(new Uri("http://www.tclnet.ir/"), cookies);
for that purpose write this code:<br/>
var httpWebReques = (HttpWebRequest) WebRequest.Create(@"http://www.tclnet.ir/api/FileCommand/AddGig ");
            httpWebReques.ContentType = "application/json";
            httpWebReques.Method = "POST";
            httpWebReques.CookieContainer = new CookieContainer();
            httpWebReques.CookieContainer.SetCookies(new Uri("http://www.tclnet.ir/"), cookies);
            using (var streamWriter=new StreamWriter(httpWebReques.GetRequestStream()))
...


但收到这条线时:

var httpResponse = (HttpWebResponse) httpWebReques.GetResponse();


得到这个错误:

The remote server returned an error: (500) Internal Server Error.


我怎么能解决这个问题?谢谢。
我的错误:
enter image description here

0 个答案:

没有答案