2014-04-26 39 views
15

Mam stary kod, który udostępnia usługi na interfejsie API sieci Web, który działa głównie na czasownikach HTTP. Chciałbym przenieść ten projekt, aby korzystać z kontroli hipermedialnej (HATEOAS). Zastanawiam się, czy istnieją już biblioteki obsługujące osadzanie łączy w reprezentacji zasobów dla zasobów podrzędnych zgodnie ze specyfikacjami HAL lub JSON-LD. Szukałem go, ale nie mogłem nic znaleźć. Dobrze byłoby wiedzieć, czy jeden z dojrzałych projektów, takich jak Yesod, Snap czy Happstack, planuje wspierać tę funkcję?Jak mogę wdrożyć HATEOAS w Haskell?

Edycja: W celu wyjaśnienia, jestem zainteresowany poziomie 3 REST Maturity Model

+1

To, o co pytasz, wydaje mi się, jest już wspierane przez Yesod, zobacz: http://www.yesodweb.com/book/restful-content – Sibi

+0

@Sibi Nie sądzę, że mówi o HTTP API używającym czasowników . Ale mam na myśli coś podobnego do [HAL] (http://stateless.co/hal_specification.html). I to jest poziom 3 w [modelu dojrzałości REST] (http://martinfowler.com/articles/richardsonMaturityModel.html) – opensourcegeek

+2

Radzę każdemu, kto patrzy na to pytanie, aby poświęcić czas na przeczytanie tej sekcji "poziomu 3" w linku @ opensourcegeek opublikowany, ponieważ jest to o wiele bardziej interesujące pytanie, niż mogłoby się wydawać na początku ("spójrz na wszystkie te buzzwords!") – Cactus

Odpowiedz

0

Widziałeś HAL wcześniej? Jest to format specyfikacji dla obiektów hipermedialnych. Github wiki dla specyfikacji ma numer list of libraries, ale nie widzę tam żadnych bibliotek haskell.
Jednak szybki google pojawia się https://github.com/talios/haskell-hal. Nie wygląda super popularnie, ale być może po przeczytaniu o HAL przyczynisz się, rozwidnisz lub uruchomisz własne!