C# 在C中将请求头传递给HttpWebRequest#

C# 在C中将请求头传递给HttpWebRequest#,c#,json,get,http-headers,httprequest,C#,Json,Get,Http Headers,Httprequest,我试图发出一个HttpWebRequest并从中获取json数据。使用Postman,当我设置url、参数和标题时,我能够得到json响应(请参阅)。但是,当我尝试使用C#时,我没有得到任何响应 我在Stackoverflow上搜索了几篇文章,并按照步骤进行了操作,但找不到问题所在,也找不到是否需要其他内容 string requestUrl = Constants.FLIPKART_INSTALLS_URL; requestUrl = requestUrl.Re

我试图发出一个HttpWebRequest并从中获取json数据。使用Postman,当我设置url、参数和标题时,我能够得到json响应(请参阅)。但是,当我尝试使用C#时,我没有得到任何响应

我在Stackoverflow上搜索了几篇文章,并按照步骤进行了操作,但找不到问题所在,也找不到是否需要其他内容

        string requestUrl = Constants.FLIPKART_INSTALLS_URL;
        requestUrl = requestUrl.Replace("##STARTDATE##", DateTime.Now.ToString("yyyy-MM-dd"));
        requestUrl = requestUrl.Replace("##ENDDATE##", DateTime.Now.ToString("yyyy-MM-dd"));

        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(requestUrl);
        //request.Credentials = CredentialCache.DefaultCredentials;
        request.Method = "GET";
        //request.ContentType = "application/json";
        request.Headers["Fk-Affiliate-id"] = Constants.FLIPKART_AFFILIATE_ID;
        request.Headers["Fk-Affiliate-token"] = Constants.FLIPKART_AFFILIATE_TOKEN;
        WebResponse response = request.GetResponse();
是我得到的回应。我不确定这是否真的是一个愚蠢的问题,但因为我对C#不太了解,所以我把它贴了出来。
提前感谢。

通过在响应对象上调用GetResponseStream(),我能够阅读内容,如果需要,请参阅以下代码:

using System;
using System.Net;
using System.Text;
using System.IO;

public class Test
{
    // Specify the URL to receive the request.
    public static void Main (string[] args)
    {
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create (args[0]);

        // Set some reasonable limits on resources used by this request
        request.MaximumAutomaticRedirections = 4;
        request.MaximumResponseHeadersLength = 4;
        // Set credentials to use for this request.
        request.Credentials = CredentialCache.DefaultCredentials;
        HttpWebResponse response = (HttpWebResponse)request.GetResponse ();

        Console.WriteLine ("Content length is {0}", response.ContentLength);
        Console.WriteLine ("Content type is {0}", response.ContentType);

        // Get the stream associated with the response.
        Stream receiveStream = response.GetResponseStream ();

        // Pipes the stream to a higher level stream reader with the required encoding format. 
        StreamReader readStream = new StreamReader (receiveStream, Encoding.UTF8);

        Console.WriteLine ("Response stream received.");
        Console.WriteLine (readStream.ReadToEnd ());
        response.Close ();
        readStream.Close ();
    }
}

GetResponse
不返回字符串,请参阅演示如何使用
GetResponseStream
的,并实际将其作为文本阅读。谢谢Alex,我正在阅读!会让你知道这是否解决了我的问题。谢谢@Alex,我在回复中的内容长度为-1,这是否意味着出了问题?