从URL中读取响应的最简单方法

本文关键字:最简单 方法 响应 读取 URL | 更新日期: 2023-09-27 18:25:19

我是C#的新手,没有找到一段简单的代码来读取URL中的响应。示例:

http://www.somesitehere.com/mysearch

反应是这样的(我不知道这是什么样的反应):

{ "response": {
"status": {
  "code": "0",
  "message": "Success",
  "version": "4.2"
},
  "start": 0,
  "total": 121,
  "images": [
    {
      "url": "www.someimagelinkhere.com/pic.jpg",
      "license": {
        "url": "",
        "attribution": "",
        "type": "unknown"
      }
    }
  ]
}}

之后,我将把网址"www.someimagelinkhere.com/pic.jpg"保存到一个文件中。但是我知道该怎么做。我只想把url和其他的分开。

我看到了这个主题:在.NET 中从URL读取字符串的最简单方法

再见

从URL中读取响应的最简单方法

您的响应为JSON格式。使用库(NewtonSoft,但也有其他库)提取所需的节点。

您可以使用Newton soft的JSON.NET之类的软件,该软件可以在Visual Studio中使用NuGet Package Manager找到并安装。

你也可以这样做。

var jSerializer = new JavaScriptSerializer();
var result = jSerializer.DeserializeObject("YOUR JSON RESPONSE STRING");

JSON字符串不会是一个具有与您的名称匹配的属性的C#对象,如start、total、images等。如果需要,您可以创建一个强类型对象,并将转换后的对象强制转换为该对象,以便于使用。

强类型版本:

var jSerializer = new JavaScriptSerializer();
var result = (YourStrongType)jSerializer.DeserializeObject("YOUR JSON RESPONSE STRING");
var imgUrl = result.images[0].url;