{"id":3715,"date":"2018-11-14T00:11:42","date_gmt":"2018-11-13T23:11:42","guid":{"rendered":"https:\/\/moe.it.slotshaven.dk\/wp\/?p=3715"},"modified":"2024-09-02T15:06:15","modified_gmt":"2024-09-02T13:06:15","slug":"spotify-rest-api-med-node-js-og-p5-js","status":"publish","type":"post","link":"https:\/\/digitalteknik.slotshaven.it\/wordpress\/spotify-rest-api-med-node-js-og-p5-js\/","title":{"rendered":"Spotify Rest API med node.js og p5.js"},"content":{"rendered":"<p>Spotify&#8217;s API er p\u00e5 flere m\u00e5der mere komplekst end dem vi har kigget p\u00e5 indtil videre. Det er det bl.a fordi det kr\u00e6ver et reelt spotify login (premium), for at identificere en klient, og give adgang til funktionerne.<\/p>\n<p>Denne del af API&#8217;et vil vi ikke g\u00e5 i detaljer med her &#8211; i eksemplet nedenfor er der brugt den login metode, som <a href=\"https:\/\/github.com\/spotify\/web-api-auth-examples\">Spotify selv giver som eksempel i deres repo<\/a>.<\/p>\n<p>F\u00f8rst og fremmest skal du g\u00e5 ind p\u00e5 spotify developer og oprette en konto og f\u00e5 et client_id. Den form for identifikation vi bruger i dette projekt kr\u00e6ver ikke en client_secret. Til geng\u00e6ld er den temmelig kortvarig og egentlig kun brugbar til testform\u00e5l. Hvis du har mod p\u00e5 at se hvordan det foreg\u00e5r, kan du fors\u00f8ge at f\u00f8lge javascriptet i index.html.<\/p>\n<p>Under alle omst\u00e6ndigheder skal du g\u00f8re f\u00f8lgende, n\u00e5r du har f\u00e5et fat i dit client_id:<\/p>\n<ol>\n<li>Opret en <a href=\"https:\/\/developer.spotify.com\/dashboard\/\">app i dit dashboard<\/a><\/li>\n<li>G\u00e5 ind p\u00e5 app&#8217;en og find settings &#8211; s\u00e6t denne callback-url:\n<ol>\n<li>http:\/\/localhost:8888<\/li>\n<\/ol>\n<\/li>\n<li><a href=\"https:\/\/minhaskamal.github.io\/DownGit\/#\/home?url=https:\/\/github.com\/simmoe\/digidaktik\/tree\/master\/apis\/Spotify_JSON\">Download mappen med eksemplet her<\/a> &#8211; eller find det p\u00e5 github <a href=\"https:\/\/github.com\/simmoe\/digidaktik\/tree\/master\/apis\/Spotify_JSON\">her<\/a><\/li>\n<li>K\u00f8r npm install i mappen for at installere de n\u00f8dvendige dependencies<\/li>\n<li>\u00c5bn index.html og skriv dit client_id ind i variablen<\/li>\n<li>K\u00f8r node app.js<\/li>\n<li>\u00c5bn din browser: localhost:8888<\/li>\n<\/ol>\n<h2>Opgaver<\/h2>\n<p>Det sjove i de her filer sker s\u00e5dan set f\u00f8rst n\u00e5r vi har f\u00e5et adgang til spotifys API. Projektet bruger et ekstra javascript ved navn\u00a0<strong>spotify-web-api.js<\/strong> til at s\u00f8ge mv. <a href=\"https:\/\/github.com\/JMPerez\/spotify-web-api-js\">Du kan l\u00e6se dokumentationen her<\/a>.<\/p>\n<p>\u00c5bn sketch.js og pr\u00f8v at f\u00f8lge koden &#8211; her er det ikke s\u00e5 kompliceret. Forel\u00f8big kan man udelukkende s\u00f8ge i sange &#8211; men man kunne tilf\u00f8je meget mere. Som du kan se kan man faktisk b\u00e5de afspille, manipulere playlister, venner, hente n\u00e6rmest uendelig meget information &#8211; etc etc. Man kunne oprette en socket server og dele en playliste. Man kunne&#8230;<\/p>\n<p>Se om du kan l\u00f8se en eller flere af f\u00f8lgende:<\/p>\n<ol>\n<li>oprette en playliste<\/li>\n<li>afspille en sang<\/li>\n<li>oprette en websocket og lade flere brugere arbejde p\u00e5 en playlist<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Spotify&#8217;s API er p\u00e5 flere m\u00e5der mere komplekst end dem vi har kigget p\u00e5 indtil videre. Det er det bl.a fordi det kr\u00e6ver et reelt spotify login (premium), for at identificere en klient, og give adgang til funktionerne. Denne del af API&#8217;et vil vi ikke g\u00e5 i detaljer med her &#8211; i eksemplet nedenfor er &#8230; <a title=\"Spotify Rest API med node.js og p5.js\" class=\"read-more\" href=\"https:\/\/digitalteknik.slotshaven.it\/wordpress\/spotify-rest-api-med-node-js-og-p5-js\/\" aria-label=\"Read more about Spotify Rest API med node.js og p5.js\">L\u00e6s mere <\/a><\/p>\n","protected":false},"author":3,"featured_media":3702,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[28],"class_list":["post-3715","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ikke-kategoriseret","tag-api"],"_links":{"self":[{"href":"https:\/\/digitalteknik.slotshaven.it\/wordpress\/wp-json\/wp\/v2\/posts\/3715","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/digitalteknik.slotshaven.it\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/digitalteknik.slotshaven.it\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/digitalteknik.slotshaven.it\/wordpress\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/digitalteknik.slotshaven.it\/wordpress\/wp-json\/wp\/v2\/comments?post=3715"}],"version-history":[{"count":1,"href":"https:\/\/digitalteknik.slotshaven.it\/wordpress\/wp-json\/wp\/v2\/posts\/3715\/revisions"}],"predecessor-version":[{"id":4741,"href":"https:\/\/digitalteknik.slotshaven.it\/wordpress\/wp-json\/wp\/v2\/posts\/3715\/revisions\/4741"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/digitalteknik.slotshaven.it\/wordpress\/wp-json\/"}],"wp:attachment":[{"href":"https:\/\/digitalteknik.slotshaven.it\/wordpress\/wp-json\/wp\/v2\/media?parent=3715"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/digitalteknik.slotshaven.it\/wordpress\/wp-json\/wp\/v2\/categories?post=3715"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/digitalteknik.slotshaven.it\/wordpress\/wp-json\/wp\/v2\/tags?post=3715"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}