Ajax med hjälp av JQuery och Sinatra

Den hälsosamme ekonomisten, Saturday 20 April, 2019
Bild: 2017-09/dsc01062.jpg

Tänkte så här på påskaftonen dela med mig av ett tips på hur man kan ladda in information på en webbsida utan att ladda om sidan. Begreppet Ajax står för "Asyncronous Javascript and XML". Men man behöver inte använda XML för att överföra information, i dag är det mycket vanligare att använda JSON, alltså Javascript Object Notation.

För att kunna efterfråga information från en server behöver man Javascript. I Javascriptbiblioteket JQuery finns en funktion som gör det enkelt att hämta information till en webbsida. Hur man använder funktionen beskrivs på W3 Schools:

https://www.w3schools.com/jquery/ajax_getjson.asp

Men hur får man då servern att leverera json som kan läsas av webbsidan? I Sinatra kan man omvandla de flesta objekt, exempelvis en array, till ett json-objekt genom att i stället för att använda en template för att rendera webbsidan enbart skicka data på följande sätt (om någon undrar så använder jag inte parametern "fragan" i det här exemplet):

get '/json?' do
  parameter = params['fragan']
  @json_svar = ["mina", "data"]
  content_type :json
  @json_svar.to_json
end

Javascriptet (JQuery) skulle i det här fallet alltså bli

$("button").click(function(){
  $.getJSON("json?fragan=data", function(result){
    for(i = 0; i < (result.length - 1) ; i++) { 
      console.log(result[i]);
    }
  });
});

Det som händer när man klickar på "button" blir då att en förfrågan skickas till servern om att den vill ha "data".  Servern svarar med att skicka en array i json-format som sedan skrivs ut på consolen.

Personligen tycker jag det här är det enklaste sättet att låta en webbsida prata med en server. För att anpassa svaret kan man skicka med olika frågor via parametern "fragan".

Det som behövs för att gör denna enkla Ajaxtillämpning är alltså:

1) Ruby med Sinatra

2) JQuery

Man kan givetvis byta ut Ruby och Sinatra mot andra ramverk, som Flask och Python eller vanlig PHP. Dock rekommenterar jag som brukligt Sinatra, eftersom Ruby har bra funktioner för att konvertera mellan olika format, exempelvis till och från json.

Ni som tycker det saknas information har rätt. Det här går inte att göra utan att veta några grundläggande saker om hur man installerar JQuery, Ruby och Sinatra. Men hade jag beskrivit det hade blogginlägget blivit alldeles för långt. Hoppas ändå någon har nytta av det här tipset.

Sitt bara tyst och se hotfull ut

Den hälsosamme ekonomisten
Bild: 2017-09/dsc01062.jpg

Läser på SVT-nyheter om mötet där SKR ville tvinga Arbetsmiljöverket att avskaffa kraven på munskydd i äldreomsorgen. Tydligen erbjöd sig en medarbetare till socialminister Lena Hallengren  också att vara med på mötet . Det framgår inte vad det var för typ av medarbetare, men förmodligen en politiskt sakkunnig. Det låter som ett riktigt drömuppdrag - något som jag verkligen skulle ha velat göra under min tid i Regeringskansliet : "Sitt bara tyst och se hotfull ut. Alla vet ändå …

Läs mer!

Antikropparna och Folkhälsomyndigheten

Den hälsosamme ekonomisten
Bild: 2017-09/dsc01062.jpg

I dag menade Anders Tegnell på Folkhälsomyndighetens presskonferens att provsvaren i dag speglar smittoläget tre veckor tidigare då det tar tid att utveckla antikroppar mot viruset. " Siffrorna speglar coronapandemin från vecka 15, eftersom det dröjer ett tag innan kroppens immunförsvar utvecklar antikroppar. Det är inte 7 procent nu. Vi ligger någonstans på 20 procent plus i Stockholm, säger statsepidemiolog Anders Tegnell om siffrorna. " Det här är ett intressant påstående, så …

Läs mer!

Lidar gör det möjligt att samarbeta i AR

Den hälsosamme ekonomisten

Ser en del rykten om vad som kommer att ersätta mobiltelefonen med tiden. Det logiska är förstås glasögon - som gör att AR (Augmented Reality) blir tillgängligt för gemene man. Problemet är att det inte finns något självklart sätt att mata in information med ett par glasögon. Man kan läsa av ögonrörelser, använda rösten eller något annat. Jag … Läs mer!

Sveriges coronadebacel kostar gränshandeln 10 miljarder

Den hälsosamme ekonomisten

Vad kostar det Sverige om det tar längre tid för oss att få ner coronasmittan än våra nordiska grannländer? Vi vet att gränshandeln mellan Sverige och Norge omsätter 26 miljarder årligen. Det mesta av varorna går åt det ena hållet - alltså från Sverige till Norge. Skälet är att den norska kronan i allmänhet är stark och att punkt- och … Läs mer!

Redan i februari visste vi att dödligheten var 0,5 till 1,0 procent

Den hälsosamme ekonomisten

Ju mer jag diskuterar dödligheten för Covid-19 , desto mer inser jag att synen om att viruset har låg dödlighet helt enkelt beror på att många är ovana vid att beräkna sannolikheter. Det förvånar mig inte att random person på internet har uppfattningar som inte stämmer överens med faktiska observationer, det förvånar mig mer att erfarna epidemiol… Läs mer!

Smittspåra viruset i stället för virusbäraren

Den hälsosamme ekonomisten

En prekär fråga när det gäller smittspårning är om man kränker den personliga integriteten. Så länge man samlar uppgifter om enskilda individer är problemet uppenbart. Men intressant nog finns det en lösning på problemet. Det är att spåra viruset i stället för virusbärarna. Eftersom virus har en unik genetisk sekvens kan man identifiera … Läs mer!

Smittfrihet som konkurrensmedel

Den hälsosamme ekonomisten

Nu inleds den process som jag skrev om för en vecka sedan . Olika länder bildar smittskyddsunioner, vilket innebär att länder som har en låg virusnivå tillåter att invånare reser mellan länderna i unionen. Aftenposten skriver om att  Norge , Danmark , Israel , Österrike , Singapore , Tjeckien , Grekland och Australien planerar att … Läs mer!

Postnummerstrategin för att bekämpa Covid-19

Den hälsosamme ekonomisten

Det har förts en diskussion om huruvida smittspårningsappar skulle vara ett effektivt sätt att bekämpa Covid-19 . Vissa forskare argumenterar emot detta och menar att en slumpmässig testning av befolkningen skulle fungera precis lika bra. Jag har funderat över detta och tror att det kan finnas ytterligare en metod - som varken bygger på smittspår… Läs mer!

Gränsen för spridning av Covid - 2000 inv/kvadratkm

Den hälsosamme ekonomisten

Har uppdaterat siffrorna från USA över spridningen av Covid-19 . Den här gången delade jag upp alla counties i klasser beroende på hur många invånare det lever per kvadratkilometer (se figuren ovan). Det visar sig att viruset enbart tycks sprida sig i counties där det bor fler än 2000 invånare per kvadratkilometer. Intressant nog ser vi … Läs mer!

Om bloggen

Den hälsosamme ekonomisten är en blogg som handlar om sjukvårdens organisation, incitament och klassisk liberalism - allt skrivet ur ett ekonomistiskt perspektiv. Webbplatsen använder tredjepartskakor (cookies) från Disqus, Piwik, Facebook, Google och Twitter för att anpassa innehållet och annonserna till användarna, tillhandahålla funktioner för sociala medier och analysera vår trafik. Vi vidarebefordrar information om din användning av vår webbplats till de sociala medier och annons- och analysföretag som vi samarbetar med. Du kan läsa mer om webbplatsens kakpolicy här. Denna sida drivs med webbverktyget Bolt. Av Mattias Lundbäck.

VR och Vårdvalssidan

Den hälsosamme ekonomisten finns även tillgänglig i VR. Har man HTC Vive eller Occulus Rift når man hifi://ekonomism genom att först installera appen High Fidelity som ger tillgång till en stor mängd olika virtuella världar. Sedan skriver man bara "ekonomism" i Goto-fältet i HiFi. Fältet motsvarar adressraden i en vanlig webbläsare.

Besök gärna www.vårdval.se - det enklaste sättet att hitta och jämföra vårdgivare.

Läs bloggkollegor

Anybodys Place Carl-Johan Westholm Cornucopia Danne Nordling Eskil Ullberg Fnordspottning Fredrik Malm Fredrik Segerfeldt Gustav Nipe Henrik Alexandersson Janerik Larsson Jonas Grafström Lennart Grundel Maria Abrahamsson Markus Uvell Mina Moderata Karameller Mattias Svensson Niclas Berggren Opassande Per Gudmundson Sjätte Mannen Tanja Bergkvist The Market Monetarist


Creative Commons-licens
Den hälsosamme ekonomisten av Mattias Lundbäck är licensierad under en Creative Commons Erkännande 4.0 Internationell licens.
Based on a work at https://www.ekonomism.us.

Sociala medier

Den hälsosamme ekonomisten är en blogg för dig som är intresserad av ekonomi, politik och teknik. Följ mig på Twitter för regelbundna uppdateringar. Läs mer om Den hälsosamme ekonomisten och Mattias Lundbäck här.


Linkonomism
Googelkonomism
Feedkonomism