C#获取POST请求中没有标题的内容

时间:2017-06-17 23:58:29

标签: c# linq xmlhttprequest

我的网站已将回复发送到我的计划。这是它的样子:

POST /login.html/signup HTTP/1.1
Host: 192.168.1.75
Connection: keep-alive
Content-Length: 450
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36
Origin: http://192.168.1.75
Authorization: 1497742211491
Content-Type: text/plain; charset=UTF-8
Accept: */*
Referer: http://192.168.1.75/
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.8

%7B%22name%22%3A%22Adola%22%2C%22telp%22%3A%22%22%2C%22agen%22%3A%22pribadi%22%2C%22alamatagen%22%3A%22%22%2C%22hp%22%3A%22%22%2C%22email%22%3A%22Adola%40gmail.com%22%2C%22userid%22%3A%22ABCDEFG%22%2C%22password%22%3A%22123456%22%2C%22pcidses%22%3A%22ABCDEFG%22%2C%22pcidperm%22%3A%221497742211491%22%2C%22imgsrc%22%3A%22%22%2C%22capcode%22%3A%22dsiauh%22%2C%22ckperm%22%3A%22%22%2C%22cknw%22%3A%22%22%2C%22ckcd1%22%3A%22%22%2C%22ckcd2%22%3A%22%22%7D

这是一个POST请求,将一些用户数据从Web浏览器发送到程序。我的目标只是从上面获取URI编码数据。目前我的低效方法是使用以下代码:

 string[] splitted = rawResponse.Split(new char[] { '\r', '\n' });
 //int result = 0;
 string aa = null;

 for (int i = 0; i < splitted.Length; i++)
 {
    if (splitted[i].Contains("%"))
    {
        aa = aa + splitted[i];
    }
 }

 string s = System.Uri.UnescapeDataString(aa);
 Console.WriteLine(s);

rawResponse是上面的请求。打印结果如下:

{"name":"Adola","telp":"","agen":"pribadi","alamatagen":"","hp":"","email":"Adola@gmail.com","userid":"ABCDEFG","password":"123456","pcidses":"ABCDEFG","pcidperm":"1497742211491","imgsrc":"","capcode":"dsiauh","ckperm":"","cknw":"","ckcd1":"","ckcd2":""}

问题是当请求标头(不是内容)包含'%'时,它会给我一个错误,例如。 GET /%USER%/12865。如何高效,没有任何问题获取内容。谢谢!

1 个答案:

答案 0 :(得分:2)

我建议你跳过标题并直接照顾身体。如果您的源对象没有提供直接访问正文的平均值,请使用此代码:

$(document).ready(function(){
    $('div[id^="showmore_"]').click(function(){
         $('div[id^="more_content_"]').fadeToggle();
    });
});
相关问题