{"version":"1.0","provider_name":"Software Engineering Daily","provider_url":"https:\/\/softwareengineeringdaily.com","author_name":"Danny Seymour","author_url":"https:\/\/softwareengineeringdaily.com\/author\/danny\/","title":"Managing Cloud Data Services with Heroku - Software Engineering Daily","type":"rich","width":600,"height":338,"html":"<blockquote class=\"wp-embedded-content\" data-secret=\"gH2snnroxd\"><a href=\"https:\/\/softwareengineeringdaily.com\/2020\/03\/31\/managing-cloud-data-services-with-heroku\/\">Managing Cloud Data Services with Heroku<\/a><\/blockquote><iframe sandbox=\"allow-scripts\" security=\"restricted\" src=\"https:\/\/softwareengineeringdaily.com\/2020\/03\/31\/managing-cloud-data-services-with-heroku\/embed\/#?secret=gH2snnroxd\" width=\"600\" height=\"338\" title=\"&#8220;Managing Cloud Data Services with Heroku&#8221; &#8212; Software Engineering Daily\" data-secret=\"gH2snnroxd\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" class=\"wp-embedded-content\"><\/iframe><script type=\"text\/javascript\">\n\/* <![CDATA[ *\/\n\/*! This file is auto-generated *\/\n!function(d,l){\"use strict\";l.querySelector&&d.addEventListener&&\"undefined\"!=typeof URL&&(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&&!\/[^a-zA-Z0-9]\/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret=\"'+t.secret+'\"]'),o=l.querySelectorAll('blockquote[data-secret=\"'+t.secret+'\"]'),c=new RegExp(\"^https?:$\",\"i\"),i=0;i<o.length;i++)o[i].style.display=\"none\";for(i=0;i<a.length;i++)s=a[i],e.source===s.contentWindow&&(s.removeAttribute(\"style\"),\"height\"===t.message?(1e3<(r=parseInt(t.value,10))?r=1e3:~~r<200&&(r=200),s.height=r):\"link\"===t.message&&(r=new URL(s.getAttribute(\"src\")),n=new URL(t.value),c.test(n.protocol))&&n.host===r.host&&l.activeElement===s&&(d.top.location.href=t.value))}},d.addEventListener(\"message\",d.wp.receiveEmbedMessage,!1),l.addEventListener(\"DOMContentLoaded\",function(){for(var e,t,s=l.querySelectorAll(\"iframe.wp-embedded-content\"),r=0;r<s.length;r++)(t=(e=s[r]).getAttribute(\"data-secret\"))||(t=Math.random().toString(36).substring(2,12),e.src+=\"#?secret=\"+t,e.setAttribute(\"data-secret\",t)),e.contentWindow.postMessage({message:\"ready\",secret:t},\"*\")},!1)))}(window,document);\n\/* ]]> *\/\n<\/script>\n","thumbnail_url":"https:\/\/i0.wp.com\/softwareengineeringdaily.com\/wp-content\/uploads\/2020\/03\/image1.png?fit=1266%2C860&ssl=1","thumbnail_width":1266,"thumbnail_height":860,"description":"Nearly all modern web applications depend on persisted data in order to function. Since the introduction of frameworks such as JavaScript in the late 1990s, developers have demanded more functionality from their web-based programs than traditional \u201cstatic\u201d websites could provide. Today, single-page applications (SPAs) such as Gmail provide a dynamic user experience by interacting with"}