Я использую Elm 0.19.1 с NoRedInk/elm-json-decode-pipeline/1.0.0
У меня есть тип самолета, который
type alias Aircraft = {name:String}
Для этого у меня есть следующий декодер:
aircraftDecoder : Json.Decode.Decoder Aircraft
aircraftDecoder =
Json.Decode.succeed Aircraft
|> Json.Decode.Pipeline.required "name" Json.Decode.string
К сожалению, декодер жалуется на то, что я говорю: "BadBody" Проблема с заданным значением: (...)" Это потому, что на самом деле моя интересующая область полна шума вокруг нее (из API HATEOAS). ), как это:
{
"_embedded" : {
"aircrafts" : [ {
"name" : "AC01",
"_links" : {
"self" : {
"href" : "http://localhost:8080/aircrafts/1"
},
"aircraft" : {
"href" : "http://localhost:8080/aircrafts/1"
}
}
}, {
"name" : "AC01",
"_links" : {
"self" : {
"href" : "http://localhost:8080/aircrafts/2"
},
"aircraft" : {
"href" : "http://localhost:8080/aircrafts/2"
}
}
} ]
},
"_links" : {
"self" : {
"href" : "http://localhost:8080/aircrafts{?page,size,sort}",
"templated" : true
},
"profile" : {
"href" : "http://localhost:8080/profile/aircrafts"
}
},
"page" : {
"size" : 20,
"totalElements" : 4,
"totalPages" : 1,
"number" : 0
}
}
Как изменить код и продолжить использовать Pipeline, чтобы декодер не потерялся из-за всего этого шума?
Я что-то слышал об использовании Json.Decode.at, но документации недостаточно, чтобы я мог получить правильный код.