簡體   English   中英

使用Unirest C#將http響應體轉換為JSON格式

[英]Convert the http response body to JSON format using Unirest C#

我正在使用mashape api: https ://market.mashape.com/montanaflynn/dictionary

這是我的代碼:

HttpResponse<RootObject> response = Unirest.get("https://montanaflynn-dictionary.p.mashape.com/define?word=irony")
    .header("X-Mashape-Key", "my mashape key")
    .header("Accept", "application/json")
    .asJson<RootObject>();

我使用以下命令生成了RootObject類: http ://json2csharp.com/

這是我的RootObject類代碼:

class Definition
{
    public string text { get; set; }
    public string attribution { get; set; }
}

class RootObject
{
    public List<Definition> definitions { get; set; }
}

當我運行上面的代碼時,我收到以下錯誤:

unirest-net.dll中出現未處理的“System.InvalidCastException”類型異常附加信息:無法將類型為“System.IO.MemoryStream”的對象強制轉換為“RootObject”。

問題:如何解決錯誤?

嘗試這個。 它必須放在異步函數中:

static async Task<RootObject> GetRootInfo()
{
     HttpResponse<RootObject> response = await Unirest.get("https://montanaflynn-dictionary.p.mashape.com/define?word=irony")
    .header("X-Mashape-Key", "my mashape key")
    .header("Accept", "application/json")
    .asJsonAsync<RootObject>();

     return response.Body;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM