3

我正在使用 mashape api 来获取速度后跟踪信息:-

https://www.mashape.com/blaazetech/indian-post

由于这是在 .NET c# 中,因此未编译以下代码:-

Task<HttpResponse<MyClass>> response = Unirest.get("https://indianpost.p.mashape.com/index.php?itemno=EF990403084IN")
.header("X-Mashape-Key", mykey)
.header("Accept", "application/json")
.asJson();

编译错误是“无法从用法中推断出方法 'unirest_net.request.HttpRequest.asJson()' 的类型参数。尝试明确指定类型参数。”

我不确定如何使用这个 api。“MyClass”有问题吗?

4

1 回答 1

2

RSDC - 好的,事实证明您的 Indian-Post API 端点无论如何都不起作用。在 Mashape 上测试它们并返回错误。

>>> 我让它为 metaCritic GET API 工作 <<<

https://www.mashape.com/byroredux/metacritic(游戏列表 API,第 2 个)

回复:我的班级

1) 在 mashape.com 站点的 API 文档页面中,找到右侧的 200/JSON 响应。

2)复制json数据

3) 访问http://json2csharp.com/并粘贴代码

4) 点击 Generate 按钮获取 c# 类代码。复制课程代码。

5) 回到 VS,转到 Models 文件夹并创建名为 MyClass.cs 的类。

6)这样粘贴您的代码:

public class MyClass
{
    public class Result
    {
        public string name { get; set; }
        public string score { get; set; }
        public string url { get; set; }
        public string rlsdate { get; set; }
        public string rating { get; set; }
        public string summary { get; set; }
        public string platform { get; set; }
    }

    public class RootObject
    {
        public List<Result> results { get; set; }
    }
}

7)试试这个:

        HttpResponse<MyClass.RootObject> response = Unirest.get("https://byroredux-metacritic.p.mashape.com/game-list/ps4/coming-soon")
        .header("X-Mashape-Key", "KxdVFN6Vlymshd5ezOQwBvS2Svjtp1bq5YOjsnFOkgTOwqwM6y")
        .header("Accept", "application/json")
        .asJson<MyClass.RootObject>();

如果您运行调试器,您可以看到response > Body > results现在包含 25 项数据。

于 2015-03-13T06:15:29.423 回答