{"id":12858,"date":"2018-01-08T09:54:27","date_gmt":"2018-01-08T08:54:27","guid":{"rendered":"http:\/\/www.devapp.it\/wordpress\/?p=12858"},"modified":"2018-01-08T09:54:27","modified_gmt":"2018-01-08T08:54:27","slug":"restheart-creare-rapidamente-api-per-mongodb","status":"publish","type":"post","link":"https:\/\/www.devapp.it\/wordpress\/restheart-creare-rapidamente-api-per-mongodb\/","title":{"rendered":"RestHeart, creare rapidamente API per MongoDB"},"content":{"rendered":"<p><a href=\"http:\/\/www.devapp.it\/wordpress\/introduzione-a-mongodb-e-ai-database-nosql\/\" target=\"_blank\" rel=\"noopener\">MongoDB <\/a>\u00e8 il sistema per database NoSQL pi\u00f9 utilizzato al mondo ed \u00e8 ormai dietro le quinte di moltissimi servizi web. Per poter interagire con un database MongoDB installato su un server solitamente predisponiamo delle API. Ci\u00f2 offre vantaggi importanti ma comporta molto lavoro.<\/p>\n<p><a href=\"http:\/\/restheart.org\" target=\"_blank\" rel=\"noopener\">RestHeart<\/a>, l&#8217;applicativo di cui parliamo in questo post, offre uno strato di Web API automatico che espone un database MongoDB sulla Rete. <strong>Non richiede sviluppo lato server<\/strong> n\u00e8 configurazioni e funziona immediatamente.<\/p>\n<p>Una volta <a href=\"https:\/\/github.com\/SoftInstigate\/RESTHeart\/releases\" target=\"_blank\" rel=\"noopener\">scaricato<\/a>, pu\u00f2 essere eseguito (richiede una Java Virtual Machine in quanto \u00e8 scritto in Java) e si pu\u00f2 provare ad interagire direttamente con un qualsiasi client HTTP come <a href=\"http:\/\/www.devapp.it\/wordpress\/postman-sviluppa-le-tue-api-piu-velocemente\/\" target=\"_blank\" rel=\"noopener\">Postman<\/a>.<\/p>\n<p>Il sito ufficiale del progetto offre un <a href=\"http:\/\/restheart.org\/quick-start.html\" target=\"_blank\" rel=\"noopener\">Quick Start<\/a> che introduce velocemente le chiamate che possono essere effettuate e spiega l&#8217;azione che esse svolgeranno sul database MongoDB.<\/p>\n<p>Tanto per fare un esempio, con il metodo POST potremo effettuare una chiamata all&#8217;indirizzo <em>\/database\/collection<\/em> (dove al posto di <em>database<\/em> indicheremo il vero nome di un database esistente e al posto di <em>collection<\/em> il nome di una collection di quel database) mentre nel body della richiesta inseriremo un oggetto JSON che verr\u00e0 inserito nella\u00a0collection citata.<\/p>\n<p>Oppure con una GET all&#8217;indirizzo <em>\/database\/collection\/id<\/em> potremo richiedere l&#8217;intero oggetto contraddistinto dall&#8217;identificativo id, nella collection database.collection.<\/p>\n<p>Di esempi da fare ce ne sarebbero molti ma se siete interessati a MongoDB vi invitiamo a sperimentare di persona e a verificare quanto lavoro ripetitivo per la creazione di Web API potrete risparmiare.<\/p>\n<p>Alla prossima!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>MongoDB \u00e8 il sistema per database NoSQL pi\u00f9 utilizzato al mondo ed \u00e8 ormai dietro le quinte&#8230;<\/p>\n","protected":false},"author":561,"featured_media":13366,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[481],"tags":[1530,1543,1652,1529,1895,1853,1896],"class_list":["post-12858","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-risorse-utili","tag-database","tag-database-nosql","tag-mongodb","tag-nosql","tag-resta-api","tag-web-api","tag-web-service"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/12858","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/users\/561"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/comments?post=12858"}],"version-history":[{"count":2,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/12858\/revisions"}],"predecessor-version":[{"id":13367,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/12858\/revisions\/13367"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/media\/13366"}],"wp:attachment":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/media?parent=12858"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/categories?post=12858"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/tags?post=12858"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}