{"id":5836,"date":"2017-08-13T23:04:54","date_gmt":"2017-08-13T21:04:54","guid":{"rendered":"https:\/\/www.tomislavstankovic.com\/blog\/?p=5836"},"modified":"2019-01-05T19:53:24","modified_gmt":"2019-01-05T17:53:24","slug":"ionic-deploy","status":"publish","type":"post","link":"https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/","title":{"rendered":"Ionic Deploy &#8211; jednostavan i brz na\u010din a\u017euriranja Ionic aplikacije"},"content":{"rendered":"<p>Kada napravite promjenu u svojoj <em>Ionic<\/em> aplikaciji i \u017eelite tu promjenu poslati svim korisnicima jedino \u0161to mo\u017eete napraviti je <a href=\"https:\/\/www.tomislavstankovic.com\/blog\/ionic-aplikacija-google-play-store\/\" target=\"_blank\">pripremiti novu verziju aplikacije, poslati ju na <em>Google Play Store<\/em><\/a> ili <em>Apple Store<\/em> i \u010dekati da oni odobre novu verziju koja \u0107e tek tada sti\u0107i korisnicima. To se mo\u017ee poprili\u010dno odu\u017eiti i tu ne mo\u017eete ni\u0161ta napraviti osim \u010dekati. <\/p>\n<p>U slu\u010dajevima kada su te promjene tek kozmeti\u010dke bilo bi dobro imati na raspolaganju <strong>br\u017ei i jednostavniji na\u010din slanja a\u017eurirane verzije aplikacije korisnicima<\/strong>. Taj na\u010din zove se <em><strong>Ionic Deploy<\/strong><\/em>.<\/p>\n<h2>Uvod<\/h2>\n<p><a href=\"https:\/\/docs.ionic.io\/services\/deploy\/\" target=\"_blank\"><em>Ionic Deploy<\/em><\/a> predstavljen je <a href=\"https:\/\/blog.ionic.io\/announcing-ionic-deploy-alpha-update-your-app-without-waiting\/\" target=\"_blank\">2015. godine<\/a>, a omogu\u0107ava br\u017ei i jednostavniji na\u010din a\u017euriranja aplikacije. Na\u017ealost te su promjene ograni\u010dene samo na one kozmeti\u010dke vezane uz <em>HTML<\/em>, <em>JS<\/em> i <em>CSS<\/em> \u0161to zna\u010di da u slu\u010daju dodavanja novih <em><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/ionic-native-3x\/\" target=\"_blank\">Ionic Native pluginova<\/a><\/em> trebate i\u0107i standardnim, <em>Google Play Store<\/em> ili <em>Apple Store<\/em>, putem.<\/p>\n<blockquote><p>Live deployments let you publish web assets such as HTML, JS, and CSS directly to your users without going through the app store. &#8211; <a href=\"https:\/\/docs.ionic.io\/services\/deploy\/\" target=\"_blank\">Ionic Services Deploy<\/a><\/p><\/blockquote>\n<p>Kako bi <em>Ionic Deploy<\/em> mogao raditi potrebne su \u010detiri stvari:<\/p>\n<ul>\n<li>Ionic aplikacija sa svojim <em>APP ID<\/em>-em<\/li>\n<li>Korisni\u010dki ra\u010dun na <a href=\"https:\/\/blog.ionic.io\/where-were-going-with-cloud\/\" target=\"_blank\"><em>Ionic Cloud<\/em><\/a><\/li>\n<li>Povezati <em>Ionic Cloud<\/em> sa <em>Ionic<\/em> aplikacijom<\/li>\n<li>Kreirati <a href=\"https:\/\/docs.ionic.io\/services\/profiles\/\" target=\"_blank\"><em>Security Profiles<\/em><\/a><\/li>\n<\/ul>\n<h2>Priprema<\/h2>\n<p>Pokrenite novi <em>Ionic<\/em> projekt i odmah dodajte <em>Android<\/em> platformu. (P.S. U ovom blog postu radim samo sa <em>Android<\/em> platformom)<\/p>\n<pre class=\"lang:sh decode:true \" >$ ionic start Ionic3Deploy blank\r\n$ cd Ionic3Deploy\r\n$ cordova platform add android<\/pre>\n<p>Sada instalirajte podr\u0161ku za <em>Cloud<\/em><\/p>\n<pre class=\"lang:sh decode:true \" >$ npm install @ionic\/cloud-angular --save<\/pre>\n<p>i dodajte u <strong>app.module.ts<\/strong>. <\/p>\n<p><em>APP_ID<\/em> iz sljede\u0107eg koraka kopirajte ovdje.<\/p>\n<pre class=\"lang:js decode:true \" title=\"app.module.ts\" >import { CloudSettings, CloudModule } from '@ionic\/cloud-angular';\r\n\r\nconst cloudSettings: CloudSettings = {\r\n  'core': {\r\n    'app_id': 'APP_ID'\r\n  }\r\n};\r\n\r\n@NgModule({\r\n  declarations: [ ... ],\r\n  imports: [\r\n    IonicModule.forRoot(MyApp),\r\n    CloudModule.forRoot(cloudSettings)\r\n  ],\r\n  bootstrap: [IonicApp],\r\n  entryComponents: [ ... ],\r\n  providers: [ ... ]\r\n})\r\nexport class AppModule {}\r\n<\/pre>\n<p>Nakon toga na adresi <a href=\"https:\/\/apps.ionic.io\/\" target=\"_blank\">https:\/\/apps.ionic.io\/<\/a> registrirajte <em>Ionic Cloud<\/em> korisni\u010dki ra\u010dun, ako ve\u0107 niste. Nakon prijave su\u010delje \u0107e biti prazno.<\/p>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Cloud.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Cloud.png\" alt=\"Ionic Cloud\" width=\"807\" height=\"741\" class=\"aligncenter size-full wp-image-5851\" srcset=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Cloud.png 807w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Cloud-300x275.png 300w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Cloud-768x705.png 768w\" sizes=\"auto, (max-width: 807px) 100vw, 807px\" \/><\/a><\/p>\n<p>Sada \u0107ete poslati <em>Ionic<\/em> aplikaciju u <em>Ionic Cloud<\/em> su\u010delje. To se radi pomo\u0107u naredbe <\/p>\n<pre class=\"lang:sh decode:true \" >$ ionic io int<\/pre>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/ionic-io-init.gif\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/ionic-io-init.gif\" alt=\"ionic io init\" width=\"977\" height=\"431\" class=\"aligncenter size-full wp-image-5857\" \/><\/a><\/p>\n<p>Ako sada pogledate <em>Ionic Cloud<\/em> su\u010delje vidjet \u0107ete svoju <em>Ionic<\/em> aplikaciju, a ispod naziva aplikacije nalazi se <em>APP ID<\/em>.<\/p>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Cloud-app.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Cloud-app.png\" alt=\"Ionic Cloud new app\" width=\"828\" height=\"519\" class=\"aligncenter size-full wp-image-5859\" srcset=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Cloud-app.png 828w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Cloud-app-300x188.png 300w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Cloud-app-768x481.png 768w\" sizes=\"auto, (max-width: 828px) 100vw, 828px\" \/><\/a><\/p>\n<p>I jo\u0161 je potrebno kreirati <em>Security Profile<\/em>. To radite klikom na kota\u010di\u0107 s desne strane pored naziva aplikacije unutar <em>Ionic Cloud<\/em> su\u010delja.<\/p>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Cloud-Security-Profile.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Cloud-Security-Profile.png\" alt=\"Ionic Security Profile\" width=\"959\" height=\"717\" class=\"aligncenter size-full wp-image-5863\" srcset=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Cloud-Security-Profile.png 959w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Cloud-Security-Profile-300x224.png 300w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Cloud-Security-Profile-768x574.png 768w\" sizes=\"auto, (max-width: 959px) 100vw, 959px\" \/><\/a><\/p>\n<p>Nakon kreiranja produkcijskog certifikata potrebno ga je postaviti. U slu\u010daju <em>Androida<\/em> to se radi kori\u0161tenjem <em>keystorea<\/em>. Ako ste ikada radili <a href=\"https:\/\/www.tomislavstankovic.com\/blog\/ionic-aplikacija-google-play-store\/\" target=\"_blank\">postavljanje aplikacije na <em>Google Play Store<\/em><\/a> onda ste ve\u0107 upoznati s postupkom izrade <em>keystorea<\/em>.<\/p>\n<pre class=\"lang:sh decode:true \" >$ keytool -genkey -v -keystore NazivAplikacije.keystore -alias NazivAplikacije -keyalg  RSA -keysize 2048 -validity 10000<\/pre>\n<p>Jako je va\u017enu da ovu datoteku i lozinku zapamtite jer \u0107e vam trebati za sve kasnije nadogradnje aplikacije.<\/p>\n<p>Datoteku <strong>NazivAplikacije.keystore<\/strong> prebacite na radnu povr\u0161inu (<em>Desktop<\/em>) kako bi vam bila lako dostupna. Klikom na <em>Edit<\/em> u gornjoj slici dobit \u0107ete sljede\u0107e<\/p>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Security-Profile-Android-iOS.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Security-Profile-Android-iOS.png\" alt=\"Ionic Security Profile Android\" width=\"1219\" height=\"778\" class=\"aligncenter size-full wp-image-5875\" srcset=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Security-Profile-Android-iOS.png 1219w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Security-Profile-Android-iOS-300x191.png 300w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Security-Profile-Android-iOS-768x490.png 768w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic-Security-Profile-Android-iOS-1024x654.png 1024w\" sizes=\"auto, (max-width: 1219px) 100vw, 1219px\" \/><\/a><\/p>\n<p>Uvezite <em>keystore<\/em> datoteku i unesite njezinu lozinku. I to je to!<\/p>\n<h2>Postavljanje funkcionalnosti<\/h2>\n<p>Sada kre\u0107e prava stvar i napokon mo\u017eete po\u010deti s postavljanjam i kori\u0161tenjem <em>Ionic Deploy<\/em> funkcionalnosti.  Instalirajte <em>Ionic Deploy plugin<\/em>.<\/p>\n<pre class=\"lang:sh decode:true \" >$ cordova plugin add ionic-plugin-deploy --save<\/pre>\n<p>Ekran aplikacije sadr\u017eavat \u0107e samo jedan gumb za provjeru a\u017euriranja. Tako\u0111er, ovo se mo\u017ee i automatizirati unutar npr. <strong>app.component.ts<\/strong> na na\u010din da se provjera automatski vr\u0161i prilikom pokretanja aplikacije i bez potrebe za klikom na gumb, ali za potrebu ovog primjera provjera ide klikom na gumb.<\/p>\n<pre class=\"lang:xhtml decode:true \" title=\"home.html\" >&lt;ion-header&gt;\r\n  &lt;ion-navbar&gt;\r\n    &lt;ion-title&gt;\r\n      Ionic3 - Deploy\r\n    &lt;\/ion-title&gt;\r\n  &lt;\/ion-navbar&gt;\r\n&lt;\/ion-header&gt;\r\n\r\n&lt;ion-content padding&gt;\r\n \r\n  &lt;button ion-button full color=\"primary\" (click)=\"checkIonicDeployUpdate()\"&gt;Ionic Deploy Update&lt;\/button&gt;\r\n\r\n&lt;\/ion-content&gt;<\/pre>\n<p>Funkcionalnost se sastoji od jedne funkcije <span class=\"lang:sh decode:true  crayon-inline\">checkIonicDeployUpdate()<\/span> koja vr\u0161i preuzimanje a\u017euriranja <span class=\"lang:sh decode:true  crayon-inline\">this._deploy.download()<\/span>, otpakiravanje a\u017euriranja <span class=\"lang:sh decode:true  crayon-inline\">this._deploy.extract()<\/span> i u\u010ditavanje a\u017euriranja <span class=\"lang:sh decode:true  crayon-inline\">this._deploy.load()<\/span>.<\/p>\n<pre class=\"lang:js mark:16-49 decode:true \" title=\"home.ts\" >import { Component } from '@angular\/core';\r\nimport { AlertController } from 'ionic-angular';\r\n\r\nimport { Deploy } from '@ionic\/cloud-angular';\r\n\r\n@Component({\r\n  selector: 'page-home',\r\n  templateUrl: 'home.html'\r\n})\r\nexport class HomePage {\r\n\r\n  constructor(public _alert: AlertController,\r\n              public _deploy: Deploy) {\r\n              }\r\n\r\n  checkIonicDeployUpdate(){\r\n      this._deploy.check().then((snapshotAvailable: boolean) =&gt; {\r\n         if(snapshotAvailable){\r\n           let alert = this._alert.create({\r\n             title: 'App Update',\r\n             subTitle: 'New version of this app will be installed now...',\r\n             buttons: ['Okay']\r\n           })\r\n            alert.present();\r\n            this._deploy.download().then(() =&gt; {\r\n                 return this._deploy.extract().then(() =&gt; {\r\n                      let alert = this._alert.create({\r\n                        title: 'Update ready',\r\n                        subTitle: 'App will now restart...',\r\n                        buttons: [{\r\n                          text: 'Restart',\r\n                          handler: data =&gt; {\r\n                            this._deploy.load();\r\n                          }\r\n                        }]\r\n                      })\r\n                      alert.present();\r\n                 }); \r\n            });\r\n         } else {\r\n           let alert = this._alert.create({\r\n             title: 'No updates',\r\n             subTitle: 'Your app is up to date!',\r\n             buttons: ['Okay']\r\n           })\r\n            alert.present();\r\n         }\r\n      });\r\n  }\r\n\r\n}<\/pre>\n<p>Aplikacija je u ovom trenutku spremna za kori\u0161tenje i slobodno ju mo\u017eete ponuditi korisnicima. Ako kliknu na gumb za provjeru a\u017euriranja korisnici \u0107e dobiti sljede\u0107e<\/p>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic3-Deploy-App.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic3-Deploy-App.png\" alt=\"Ionic3 Deploy App\" width=\"721\" height=\"640\" class=\"aligncenter size-full wp-image-5873\" srcset=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic3-Deploy-App.png 721w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic3-Deploy-App-300x266.png 300w\" sizes=\"auto, (max-width: 721px) 100vw, 721px\" \/><\/a><\/p>\n<h2>Kori\u0161tenje funkcionalnosti<\/h2>\n<p>Pretpostavimo da su korisnici instalirati va\u0161u <em>Ionic<\/em> aplikaciju i da ju bez problema koriste. U me\u0111uvremenu odlu\u010dite npr. promijeniti pozadinsku boju po\u010detnog ekrana i boju gumba za provjeru a\u017euriranja. <\/p>\n<p>Slanje nove verzije aplikacije na <em>Ionic Cloud<\/em> vr\u0161i se pomo\u0107u naredbe<\/p>\n<pre class=\"lang:sh decode:true \" >$ ionic upload --note \"This is first deploy\" --deploy production<\/pre>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/IonicDeployProduction.gif\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/IonicDeployProduction.gif\" alt=\"Ionic Deploy Production\" width=\"977\" height=\"433\" class=\"aligncenter size-full wp-image-5885\" \/><\/a><\/p>\n<p>I odmah na adresi <a href=\"https:\/\/apps.ionic.io\/\" target=\"_blank\">https:\/\/apps.ionic.io\/<\/a> mo\u017eete vidjeti novu verziju aplikacije.<\/p>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/IonicDeploy-Active.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/IonicDeploy-Active.png\" alt=\"Ionic Deploy Active\" width=\"1216\" height=\"767\" class=\"aligncenter size-full wp-image-5881\" srcset=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/IonicDeploy-Active.png 1216w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/IonicDeploy-Active-300x189.png 300w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/IonicDeploy-Active-768x484.png 768w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/IonicDeploy-Active-1024x646.png 1024w\" sizes=\"auto, (max-width: 1216px) 100vw, 1216px\" \/><\/a><\/p>\n<p>Ako sada pokrenete aplikaciju i kliknete na gumb za provjeru nadogradnji dobit \u0107ete novu verziju aplikacije.<\/p>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic3-Deploy-App-Active.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic3-Deploy-App-Active.png\" alt=\"Ionic3 Deploy App Active\" width=\"1084\" height=\"640\" class=\"aligncenter size-full wp-image-5883\" srcset=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic3-Deploy-App-Active.png 1084w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic3-Deploy-App-Active-300x177.png 300w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic3-Deploy-App-Active-768x453.png 768w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/Ionic3-Deploy-App-Active-1024x605.png 1024w\" sizes=\"auto, (max-width: 1084px) 100vw, 1084px\" \/><\/a><\/p>\n<h2>Zaklju\u010dak<\/h2>\n<p>Osobno, do sada nisam u produkciji ozbiljnije koristio alate vezane uz <em>Ionic Cloud<\/em> kao \u0161to su <a href=\"https:\/\/docs.ionic.io\/services\/auth\/\" target=\"_blank\"><em>Auth<\/em><\/a>, <a href=\"https:\/\/docs.ionic.io\/services\/push\/\" target=\"_blank\"><em>Push<\/em><\/a> i <a href=\"https:\/\/docs.ionic.io\/services\/package\/\" target=\"_blank\"><em>Package<\/em><\/a> upravo zbog toga \u0161to sam se bojao ovakvih poruka: <\/p>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/IonicAuth.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/IonicAuth.png\" alt=\"Ionic Auth\" width=\"1105\" height=\"362\" class=\"aligncenter size-full wp-image-5887\" srcset=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/IonicAuth.png 1105w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/IonicAuth-300x98.png 300w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/IonicAuth-768x252.png 768w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/IonicAuth-1024x335.png 1024w\" sizes=\"auto, (max-width: 1105px) 100vw, 1105px\" \/><\/a><\/p>\n<p>Ipak, <em>Ionic Deploy<\/em> je vrlo prakti\u010dan na\u010din a\u017euriranja <em>Ionic<\/em> aplikacija, ako ni\u0161ta drugo onda barem za vrijeme razvoja i testiranja.<\/p>\n<pre class=\"lang:js decode:true \" title=\"package.json\" >{\r\n    \"name\": \"ionic-deploy\",\r\n    \"version\": \"0.0.0\",\r\n    \"author\": \"Tomislav Stankovi\u0107\",\r\n    \"homepage\": \"https:\/\/www.tomislavstankovic.com\/\",\r\n    \"private\": true,\r\n    \"scripts\": {\r\n        \"clean\": \"ionic-app-scripts clean\",\r\n        \"build\": \"ionic-app-scripts build\",\r\n        \"lint\": \"ionic-app-scripts lint\",\r\n        \"ionic:build\": \"ionic-app-scripts build\",\r\n        \"ionic:serve\": \"ionic-app-scripts serve\"\r\n    },\r\n    \"dependencies\": {\r\n        \"@angular\/common\": \"4.1.3\",\r\n        \"@angular\/compiler\": \"4.1.3\",\r\n        \"@angular\/compiler-cli\": \"4.1.3\",\r\n        \"@angular\/core\": \"4.1.3\",\r\n        \"@angular\/forms\": \"4.1.3\",\r\n        \"@angular\/http\": \"4.1.3\",\r\n        \"@angular\/platform-browser\": \"4.1.3\",\r\n        \"@angular\/platform-browser-dynamic\": \"4.1.3\",\r\n        \"@ionic-native\/core\": \"3.12.1\",\r\n        \"@ionic-native\/splash-screen\": \"3.12.1\",\r\n        \"@ionic-native\/status-bar\": \"3.12.1\",\r\n        \"@ionic\/cloud-angular\": \"^0.12.0\",\r\n        \"@ionic\/storage\": \"2.0.1\",\r\n        \"cordova-android\": \"^6.2.3\",\r\n        \"cordova-plugin-console\": \"1.0.5\",\r\n        \"cordova-plugin-device\": \"1.1.4\",\r\n        \"cordova-plugin-splashscreen\": \"~4.0.1\",\r\n        \"cordova-plugin-statusbar\": \"2.2.2\",\r\n        \"cordova-plugin-whitelist\": \"1.3.1\",\r\n        \"ionic-angular\": \"3.6.0\",\r\n        \"ionic-plugin-deploy\": \"~0.6.7\",\r\n        \"ionic-plugin-keyboard\": \"~2.2.1\",\r\n        \"ionicons\": \"3.0.0\",\r\n        \"rxjs\": \"5.4.0\",\r\n        \"sw-toolbox\": \"3.6.0\",\r\n        \"zone.js\": \"0.8.12\"\r\n    },\r\n    \"devDependencies\": {\r\n        \"@ionic\/app-scripts\": \"^2.1.3\",\r\n        \"@ionic\/cli-plugin-cordova\": \"1.6.2\",\r\n        \"@ionic\/cli-plugin-ionic-angular\": \"1.4.1\",\r\n        \"ionic\": \"3.7.0\",\r\n        \"typescript\": \"2.3.4\"\r\n    },\r\n    \"cordovaPlugins\": [\r\n        \"cordova-plugin-whitelist\",\r\n        \"cordova-plugin-console\",\r\n        \"cordova-plugin-statusbar\",\r\n        \"cordova-plugin-device\",\r\n        \"cordova-plugin-splashscreen\",\r\n        \"ionic-plugin-keyboard\"\r\n    ],\r\n    \"cordovaPlatforms\": [],\r\n    \"description\": \"Ionic3Deploy: An Ionic project\",\r\n    \"cordova\": {\r\n        \"plugins\": {\r\n            \"cordova-plugin-console\": {},\r\n            \"cordova-plugin-device\": {},\r\n            \"cordova-plugin-splashscreen\": {},\r\n            \"cordova-plugin-statusbar\": {},\r\n            \"cordova-plugin-whitelist\": {},\r\n            \"ionic-plugin-deploy\": {},\r\n            \"ionic-plugin-keyboard\": {}\r\n        },\r\n        \"platforms\": [\r\n            \"android\"\r\n        ]\r\n    }\r\n}<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Kada napravite promjenu u svojoj Ionic aplikaciji i \u017eelite tu promjenu poslati svim korisnicima jedino \u0161to mo\u017eete napraviti je pripremiti novu verziju aplikacije, poslati ju na Google Play Store ili Apple Store i \u010dekati da oni odobre novu verziju koja \u0107e tek tada sti\u0107i korisnicima. To se mo\u017ee poprili\u010dno odu\u017eiti i tu ne mo\u017eete ni\u0161ta &hellip; <a href=\"https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/\" class=\"more-link\">Nastavi \u010ditati <span class=\"screen-reader-text\">Ionic Deploy &#8211; jednostavan i brz na\u010din a\u017euriranja Ionic aplikacije<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":5837,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[564,351],"tags":[455,454,456],"class_list":["post-5836","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-mobile","category-razvoj","tag-ionic-cloud","tag-ionic-deploy","tag-ionic-pro"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Ionic Deploy - jednostavan i brz na\u010din a\u017euriranja Ionic aplikacije - Tomislav Stankovi\u0107<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/\" \/>\n<meta property=\"og:locale\" content=\"hr_HR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ionic Deploy - jednostavan i brz na\u010din a\u017euriranja Ionic aplikacije - Tomislav Stankovi\u0107\" \/>\n<meta property=\"og:description\" content=\"Kada napravite promjenu u svojoj Ionic aplikaciji i \u017eelite tu promjenu poslati svim korisnicima jedino \u0161to mo\u017eete napraviti je pripremiti novu verziju aplikacije, poslati ju na Google Play Store ili Apple Store i \u010dekati da oni odobre novu verziju koja \u0107e tek tada sti\u0107i korisnicima. To se mo\u017ee poprili\u010dno odu\u017eiti i tu ne mo\u017eete ni\u0161ta &hellip; Nastavi \u010ditati Ionic Deploy &#8211; jednostavan i brz na\u010din a\u017euriranja Ionic aplikacije\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/\" \/>\n<meta property=\"og:site_name\" content=\"Tomislav Stankovi\u0107\" \/>\n<meta property=\"article:published_time\" content=\"2017-08-13T21:04:54+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-01-05T17:53:24+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/ionic-deploy.png\" \/>\n\t<meta property=\"og:image:width\" content=\"825\" \/>\n\t<meta property=\"og:image:height\" content=\"510\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Tomislav Stankovi\u0107\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Napisao\/la\" \/>\n\t<meta name=\"twitter:data1\" content=\"Tomislav Stankovi\u0107\" \/>\n\t<meta name=\"twitter:label2\" content=\"Procijenjeno vrijeme \u010ditanja\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minuta\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/ionic-deploy\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/ionic-deploy\\\/\"},\"author\":{\"name\":\"Tomislav Stankovi\u0107\",\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/#\\\/schema\\\/person\\\/0329c549c57700034ea77f5d3d78396d\"},\"headline\":\"Ionic Deploy &#8211; jednostavan i brz na\u010din a\u017euriranja Ionic aplikacije\",\"datePublished\":\"2017-08-13T21:04:54+00:00\",\"dateModified\":\"2019-01-05T17:53:24+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/ionic-deploy\\\/\"},\"wordCount\":720,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/#\\\/schema\\\/person\\\/0329c549c57700034ea77f5d3d78396d\"},\"image\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/ionic-deploy\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/wp-content\\\/uploads\\\/2017\\\/08\\\/ionic-deploy.png\",\"keywords\":[\"Ionic Cloud\",\"Ionic Deploy\",\"Ionic Pro\"],\"articleSection\":[\"Mobile\",\"Razvoj\"],\"inLanguage\":\"hr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/ionic-deploy\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/ionic-deploy\\\/\",\"url\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/ionic-deploy\\\/\",\"name\":\"Ionic Deploy - jednostavan i brz na\u010din a\u017euriranja Ionic aplikacije - Tomislav Stankovi\u0107\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/ionic-deploy\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/ionic-deploy\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/wp-content\\\/uploads\\\/2017\\\/08\\\/ionic-deploy.png\",\"datePublished\":\"2017-08-13T21:04:54+00:00\",\"dateModified\":\"2019-01-05T17:53:24+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/ionic-deploy\\\/#breadcrumb\"},\"inLanguage\":\"hr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/ionic-deploy\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"hr\",\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/ionic-deploy\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/wp-content\\\/uploads\\\/2017\\\/08\\\/ionic-deploy.png\",\"contentUrl\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/wp-content\\\/uploads\\\/2017\\\/08\\\/ionic-deploy.png\",\"width\":825,\"height\":510,\"caption\":\"\u0160to je Ionic Deploy?\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/ionic-deploy\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Po\u010detna stranica\",\"item\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ionic Deploy &#8211; jednostavan i brz na\u010din a\u017euriranja Ionic aplikacije\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/\",\"name\":\"Tomislav Stankovi\u0107\",\"description\":\"Sam svoj bloger\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/#\\\/schema\\\/person\\\/0329c549c57700034ea77f5d3d78396d\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"hr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/#\\\/schema\\\/person\\\/0329c549c57700034ea77f5d3d78396d\",\"name\":\"Tomislav Stankovi\u0107\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"hr\",\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/wp-content\\\/uploads\\\/2019\\\/10\\\/cropped-TomislavStankovic.jpg\",\"url\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/wp-content\\\/uploads\\\/2019\\\/10\\\/cropped-TomislavStankovic.jpg\",\"contentUrl\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/wp-content\\\/uploads\\\/2019\\\/10\\\/cropped-TomislavStankovic.jpg\",\"width\":248,\"height\":165,\"caption\":\"Tomislav Stankovi\u0107\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/wp-content\\\/uploads\\\/2019\\\/10\\\/cropped-TomislavStankovic.jpg\"},\"description\":\"Bloger \u0161irokog raspona interesa od kojih dio voli objaviti na ovom blogu. U neslobodno vrijeme Angular developer mobilnih i web aplikacija.\",\"sameAs\":[\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/tomislavstankovic\\\/\"],\"url\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/author\\\/tomislavstankovic\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Ionic Deploy - jednostavan i brz na\u010din a\u017euriranja Ionic aplikacije - Tomislav Stankovi\u0107","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/","og_locale":"hr_HR","og_type":"article","og_title":"Ionic Deploy - jednostavan i brz na\u010din a\u017euriranja Ionic aplikacije - Tomislav Stankovi\u0107","og_description":"Kada napravite promjenu u svojoj Ionic aplikaciji i \u017eelite tu promjenu poslati svim korisnicima jedino \u0161to mo\u017eete napraviti je pripremiti novu verziju aplikacije, poslati ju na Google Play Store ili Apple Store i \u010dekati da oni odobre novu verziju koja \u0107e tek tada sti\u0107i korisnicima. To se mo\u017ee poprili\u010dno odu\u017eiti i tu ne mo\u017eete ni\u0161ta &hellip; Nastavi \u010ditati Ionic Deploy &#8211; jednostavan i brz na\u010din a\u017euriranja Ionic aplikacije","og_url":"https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/","og_site_name":"Tomislav Stankovi\u0107","article_published_time":"2017-08-13T21:04:54+00:00","article_modified_time":"2019-01-05T17:53:24+00:00","og_image":[{"width":825,"height":510,"url":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/ionic-deploy.png","type":"image\/png"}],"author":"Tomislav Stankovi\u0107","twitter_card":"summary_large_image","twitter_misc":{"Napisao\/la":"Tomislav Stankovi\u0107","Procijenjeno vrijeme \u010ditanja":"5 minuta"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/#article","isPartOf":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/"},"author":{"name":"Tomislav Stankovi\u0107","@id":"https:\/\/www.tomislavstankovic.com\/blog\/#\/schema\/person\/0329c549c57700034ea77f5d3d78396d"},"headline":"Ionic Deploy &#8211; jednostavan i brz na\u010din a\u017euriranja Ionic aplikacije","datePublished":"2017-08-13T21:04:54+00:00","dateModified":"2019-01-05T17:53:24+00:00","mainEntityOfPage":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/"},"wordCount":720,"commentCount":0,"publisher":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/#\/schema\/person\/0329c549c57700034ea77f5d3d78396d"},"image":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/#primaryimage"},"thumbnailUrl":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/ionic-deploy.png","keywords":["Ionic Cloud","Ionic Deploy","Ionic Pro"],"articleSection":["Mobile","Razvoj"],"inLanguage":"hr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/","url":"https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/","name":"Ionic Deploy - jednostavan i brz na\u010din a\u017euriranja Ionic aplikacije - Tomislav Stankovi\u0107","isPartOf":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/#primaryimage"},"image":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/#primaryimage"},"thumbnailUrl":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/ionic-deploy.png","datePublished":"2017-08-13T21:04:54+00:00","dateModified":"2019-01-05T17:53:24+00:00","breadcrumb":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/#breadcrumb"},"inLanguage":"hr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/"]}]},{"@type":"ImageObject","inLanguage":"hr","@id":"https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/#primaryimage","url":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/ionic-deploy.png","contentUrl":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2017\/08\/ionic-deploy.png","width":825,"height":510,"caption":"\u0160to je Ionic Deploy?"},{"@type":"BreadcrumbList","@id":"https:\/\/www.tomislavstankovic.com\/blog\/ionic-deploy\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Po\u010detna stranica","item":"https:\/\/www.tomislavstankovic.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Ionic Deploy &#8211; jednostavan i brz na\u010din a\u017euriranja Ionic aplikacije"}]},{"@type":"WebSite","@id":"https:\/\/www.tomislavstankovic.com\/blog\/#website","url":"https:\/\/www.tomislavstankovic.com\/blog\/","name":"Tomislav Stankovi\u0107","description":"Sam svoj bloger","publisher":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/#\/schema\/person\/0329c549c57700034ea77f5d3d78396d"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.tomislavstankovic.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"hr"},{"@type":["Person","Organization"],"@id":"https:\/\/www.tomislavstankovic.com\/blog\/#\/schema\/person\/0329c549c57700034ea77f5d3d78396d","name":"Tomislav Stankovi\u0107","image":{"@type":"ImageObject","inLanguage":"hr","@id":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2019\/10\/cropped-TomislavStankovic.jpg","url":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2019\/10\/cropped-TomislavStankovic.jpg","contentUrl":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2019\/10\/cropped-TomislavStankovic.jpg","width":248,"height":165,"caption":"Tomislav Stankovi\u0107"},"logo":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2019\/10\/cropped-TomislavStankovic.jpg"},"description":"Bloger \u0161irokog raspona interesa od kojih dio voli objaviti na ovom blogu. U neslobodno vrijeme Angular developer mobilnih i web aplikacija.","sameAs":["https:\/\/www.tomislavstankovic.com\/blog\/","https:\/\/www.linkedin.com\/in\/tomislavstankovic\/"],"url":"https:\/\/www.tomislavstankovic.com\/blog\/author\/tomislavstankovic\/"}]}},"_links":{"self":[{"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/posts\/5836","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/comments?post=5836"}],"version-history":[{"count":49,"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/posts\/5836\/revisions"}],"predecessor-version":[{"id":8072,"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/posts\/5836\/revisions\/8072"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/media\/5837"}],"wp:attachment":[{"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/media?parent=5836"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/categories?post=5836"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/tags?post=5836"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}