aeson

    4熱度

    1回答

    我的目標是在Haskell中編寫一個程序,該程序採用json文件的名稱並將其餘參數解釋爲通過導航該json文件的路徑並打印導航的值至。問題是因爲JSON可以包含多個值類型,我不知道如何讓Haskell的類型系統明白我想要的。下面是「導航」功能,我不能夠正確執行Haskell代碼: import qualified Data.Aeson as A import qualified Data.Byt

    2熱度

    1回答

    我試圖避免爲toJSON編寫定義。這是我遇到的錯誤: Datatypes.hs:92:10: No instance for (aeson-0.6.0.2:Data.Aeson.Types.Class.GToJSON (GHC.Generics.Rep (HashMap Key Project))) arising from a use of `aeson

    2熱度

    2回答

    你知道任何哈斯克爾庫 提供了一些簡化備案驗證和(!) 作品與埃宋的? 我知道我可以寫一些構造函數,但是我想在不重新發明輪子的情況下擦除樣板。 我所尋找的是以下幾點: 我想定義每個領域的「合同」。例如: data Person = Person { age :: Integer ,email :: Text ,projects :: [Project]} 現在,我想

    6熱度

    4回答

    這不是那很難爲生成的類型編寫ToJSON/FromJSON實例,但仍然可以在生成代碼時將它拋入?或者是否有一種簡單的方法可以讓Yesod用戶成爲這種用戶? (我沒有挖過深成TH是如何工作的?) 更新: OK,我喜歡這個建議,但是,說我的執着類型是用戶。如果我使用 ​​ 它產生 Exception when trying to run compile-time code: Data.Aes

    11熱度

    1回答

    我正在使用Data.Aeson將一些JSON解析爲記錄類型。不時數據被添加到JSON,這打破了我的代碼爲埃宋抱怨東西的效果: 預期目標的21 名稱/值對,但有23名/值 我真的更喜歡以容錯的方式解析JSON - 我不在乎是否有更多的字段在以後添加到JSON中,只是解析任何可以!有沒有辦法實現這種容錯?這裏是我的代碼: myRecordFromJSONString :: BS.ByteString

    13熱度

    3回答

    從previous post開始,我發現我完全卡住了。我試圖將JSON結構解析爲我自己的類型,不僅我堅持如何解析數組,我甚至不確定是否按照預期使用了Aeson庫。任何幫助將不勝感激。 代碼: data Exif = Exif [(T.Text, ExifValue)] deriving (Show) data ExifValue = ExifText T.Text | Exi

    6熱度

    2回答

    我正在寫一個data記錄給一個JIRAJSON對象。問題是,多個對象具有相同的名稱/值對標籤。例如: (從捲曲返回並格式化) {"expand":"schema,names" ,"startAt":0 ,"maxResults":2 ,"total":74 ,"issues":[ {"expand":"editmeta,renderedFields,transitions,c

    4熱度

    2回答

    我想分析一個JSON對象,並創建一個JSONEvent給定name和args 我使用埃宋,而現在我stucked上轉換"args":[{"a": "b"}]到[(String, String)]。 提前致謝! {-# LANGUAGE OverloadedStrings #-} import Control.Applicative import Data.Aeson data JSONE

    3熱度

    1回答

    我想寫一個模塊,從api分析xml,去掉一些信息,並將結果打印爲json,但是我在打印步驟中遇到了一個呃逆。如果我打印節目,我確實看到正確的數據在那裏,但是,將記錄轉換成json,encode shows的調用會產生段錯誤。 {-# LANGUAGE Arrows, NoMonomorphismRestriction, OverloadedStrings #-} import Network.H

    4熱度

    1回答

    我在 {"command":"get","params":{"something":"something else"}} 風格JSON請求,並從Yesod book {-# LANGUAGE OverloadedStrings #-} import Network.Wai (Response, responseLBS, Application, requestBody) import Ne