asp.net调用url获取信息

时间:2013-05-20 14:59:07

标签: c# asp.net api http

我正在尝试在我们的网站上实施域名搜索,但我不知道如何...我注册的WHOIS服务,给了我一个使用的API密钥......当我在我的网站上使用以下地址时浏览器的网址, http://api.robowhois.com/v1/availability/example.com

出现一个登录框,询问我的用户名和密码,当我输入我们的用户名和密码时,这是他们给我的密钥,会出现一个页面,其中包含以下内容

    {
  "response": {
"available": false
  }
}

我很遗憾地说,但我一直在寻找如何解决这个问题的几个星期,但最后我最后的办法是转向堆栈溢出......有人可以帮助,有没有办法解决使用并调用网址并使用信息?

2 个答案:

答案 0 :(得分:1)

您已经获得了所需的信息。它以JSON对象响应,说它不可用。

要根据需要检索信息,您可以使用Jquery,只需将URL放在示例中的函数中并获取data.response.available值并将其分配给文本框等。有关如何制作JSON的更多信息调用并解析它们,请查看this documentation in Jquery website

答案 1 :(得分:0)

  

RoboWhois是一个Web服务,提供访问WHOIS的API套件   记录和域相关信息具有统一,一致   接口。使用RoboWhois API,您可以检索解析的WHOIS详细信息   作为方便的JSON结构。

为了检查给定域的可用性,您必须向robowhois api发送http get请求http://api.robowhois.com/v1/availability/example.com

服务器通过发送包含json的http响应来回答请求,如下所示:

{
  "response": {
    "available": false
  }
}

表示域名不再可用。

为了使用json响应中包含的信息,您应该将json对象反序列化为c#对象。例如,您可以使用json.net library

执行此操作

以下是关于如何使用json.net反序列化json的文档中的一个小例子:

Product product = new Product();
product.Name = "Apple";
product.ExpiryDate = new DateTime(2008, 12, 28);
product.Price = 3.99M;
product.Sizes = new string[] { "Small", "Medium", "Large" };

string output = JsonConvert.SerializeObject(product);
//{
//  "Name": "Apple",
//  "ExpiryDate": "2008-12-28T00:00:00",
//  "Price": 3.99,
//  "Sizes": [
//    "Small",
//    "Medium",
//    "Large"
//  ]
//}

Product deserializedProduct = JsonConvert.DeserializeObject<Product>(output);