{"id":1928,"date":"2007-03-09T16:04:19","date_gmt":"2007-03-09T20:04:19","guid":{"rendered":"http:\/\/www.markbaker.ca\/blog\/2007\/03\/09\/getpost-described\/"},"modified":"2007-03-09T16:04:19","modified_gmt":"2007-03-09T20:04:19","slug":"getpost-described","status":"publish","type":"post","link":"http:\/\/www.markbaker.ca\/blog\/2007\/03\/getpost-described\/","title":{"rendered":"GET\/POST described"},"content":{"rendered":"<a href=\"http:\/\/pluralsight.com\/blogs\/dbox\/archive\/2007\/03\/08\/46375.aspx\">Don&#8217;s latest<\/a> on GET is interesting (especially &#8220;That&#8217;s certainly where I&#8217;m investing&#8221;!), but I really liked this bit of <a href=\"http:\/\/www.gotdotnet.com\/team\/tewald\/\">Tim Ewald<\/a>&#8216;s comment;\n\n<blockquote cite=\"http:\/\/pluralsight.com\/blogs\/dbox\/archive\/2007\/03\/08\/46375.aspx#46382\">\nThe solution is a minimal footprint interaction, like a coarse-grained document transfer via a pin-hole, a la&#8217; a Biztalk port. Exposing all your data via GET so anyone can read anything they want (modulo security concerns) and then providing controlled writes through pin-hole ports that consume documents and encapsulate the actual update process.\n<\/blockquote>\n\n<p>Bingo!  Give the man a cigar.<\/p>\n\n<p>That said, once you&#8217;ve done that for a while you will, in all likelihood (I&#8217;ve been there), find the need for the client to have expectations about server-side state changes beyond those offered by POST; PUT and DELETE are two very useful expectations.<\/p>","protected":false},"excerpt":{"rendered":"Don&#8217;s latest on GET is interesting (especially &#8220;That&#8217;s certainly where I&#8217;m investing&#8221;!), but I really liked this bit of Tim Ewald&#8216;s comment; The solution is a minimal footprint interaction, like a coarse-grained document transfer via a pin-hole, a la&#8217; a Biztalk port. Exposing all your data via GET so anyone can read anything they want [&hellip;]","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[22,37],"class_list":["post-1928","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-rest","tag-webarch"],"_links":{"self":[{"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/posts\/1928","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/comments?post=1928"}],"version-history":[{"count":0,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/posts\/1928\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/media?parent=1928"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/categories?post=1928"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/tags?post=1928"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}