如何更改Console App输出结果只是不是整个html

时间:2017-10-13 08:59:47

标签: c# html console-application

当我运行我的Html代码时,它只显示 JSON 结果,但如果我使用控制台调用http,则会显示网络表单的完整代码。我可以更改哪些内容才能在控制台应用中显示 JSON 结果?

[Html代码]

enter image description here

[控制台结果]

enter image description here

        using (var client = new WebClient()) //WebClient  
        {
            client.Encoding = System.Text.Encoding.UTF8;
            client.Headers.Add("Content-Type:application/json");
            client.Headers.Add("Accept:application/json");
            var result = client.DownloadString("http://localhost:49299/test.aspx");  
            Console.WriteLine(result);
            Console.ReadLine();
        }

2 个答案:

答案 0 :(得分:0)

您正在阅读整个网页回复,其中包括所有HTML和JavaScript。

显然,您想要的是浏览器在页面上运行的JavaScript函数的结果。他们解决的方法就是让JavaScript对包含结果的服务器进行XHR调用。

由于您使用的是ASP.NET,因此您可以设置一个ASP.NET Web API项目来响应此类REST调用。

答案 1 :(得分:0)

您的服务器代码只返回包含javascript的html。如果您通过Web浏览器向服务器请求,浏览器将执行javascript并且您会看到正确的数据。同时,如果您通过C#代码发出请求,则不会执行javascript。所以你需要知道

  1. asp.net webforms如何在此处返回json数据How to return a JSON object in standard web forms .Net
  2. 如何通过C#使用谷歌地理编码器API。您可以通过C#手动请求google api或仅使用包装器。可能是https://github.com/chadly/Geocoding.net
  3. 之前我还没有尝试过这个