繁体   English   中英

C#在WebClient中传递GET参数

[英]C# Passing GET parameter in the webclient

我试图在单击按钮后捕获返回的html。 我使用提琴手来查看用户单击按钮时发送了什么请求。 以下是标题信息。

GET http://www.nseindia.com/products/dynaContent/equities/equities/bulkdeals.jsp?symbol=&segmentLink=13&symbolCount=&dateRange=day&fromDate=&toDate=&dataType=DEALS HTTP/1.1
    Host: www.nseindia.com
    Proxy-Connection: keep-alive
    Accept: */*
    X-Requested-With: XMLHttpRequest
    User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36
    Referer: http://www.nseindia.com/products/content/equities/equities/bulk.htm
    Accept-Encoding: gzip, deflate, sdch
    Accept-Language: en-US,en;q=0.8

我有下面的代码不起作用。 有人可以指出正确的解决方案吗?

  var nseBulkDealsUrl = @"http://www.nseindia.com/products/dynaContent/equities/equities/bulkdeals.jsp?symbol=&segmentLink=13&symbolCount=&dateRange=day&fromDate=&toDate=&dataType=DEALS";

    var client = new WebClient();
    client.Encoding = Encoding.UTF8;

    var values = new NameValueCollection();
    values.Add("Referer", "http://www.nseindia.com/products/content/equities/equities/bulk.htm");
    values.Add("User-Agent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36");
    values.Add("X-Requested-With", "XMLHttpRequest");

    client.Headers.Add(values);
    client.Proxy = WebRequest.DefaultWebProxy; 

    var htmlPageSource = client.DownloadString(nseBulkDealsUrl);

您必须为标题填写足够的信息。 可以使用以下代码:

  var nseBulkDealsUrl = @"http://www.nseindia.com/products/dynaContent/equities/equities/bulkdeals.jsp?symbol=&segmentLink=13&symbolCount=&dateRange=day&fromDate=&toDate=&dataType=DEALS";
        var client = new WebClient();
        client.Encoding = Encoding.UTF8;

        var values = new NameValueCollection();
        values.Add("Referer", "http://www.nseindia.com/products/content/equities/equities/bulk.htm");
        values.Add("User-Agent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36");
        values.Add("X-Requested-With", "XMLHttpRequest");
        values.Add("Accept", "*/*");
        //values.Add("Accept-Encoding", "gzip, deflate, sdch");
        values.Add("Accept-Language", "en-US,en;q=0.8");
        client.Proxy = WebRequest.DefaultWebProxy;
        //client.UploadValues(nseBulkDealsUrl, "GET", values);
        client.Headers.Add(values);
        var htmlPageSource = client.DownloadString(nseBulkDealsUrl);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM