JSON-tiedoston datan hakeminen.

Liittynyt
25.04.2018
Viestejä
329
Eli olenko oikein ymmärtänyt että JSON-tiedoston dataa voi hakea vain kun sivut on jo "ylhäällä" eli jossakin webhostissa ja se prosessi suoritetaan siellä serverillä?

Tutoriaalit antaa sen kuvan että ei onnistu JSON-testaaminen oman koneen päässä paikallisesti ellei asenna Xamppia tai vastaavaa serveriä koneelle.
 
Aloittaja voisi kuvata vähän tarkemmin mitä on tekemässä. Kyllä JSON-tiedostoa voi lukea paikallisesti millä tahansa JSONia tukevalla kielellä, ei tähän mitään webbiservereitä tarvita.

Ja tosiaan tuo pikkukysymysten ketju olisi oikeampi paikka.
 
Pahoittelut, aloittelijan moka. Olin yrittänyt tehdä server-requestia "XMLhttpsRequest();" jolla hakea se JSON-tiedosto mutta tietenkään sitä serveriä ei ollut olemassa....

Olisin halunnut tietää pystyykö tuota JSON-tiedostoa lataamaan ilman että se haetaan serveriltä, mutta ainut vaihtoehto näyttää olevan että JSON-data pitäisi laittaa JavaScript-tiedoston sisälle muuttujana jolloin HTML:ssä voisi viitata esim: <script src="./data.js"></script> , mutta tuo on huono ratkaisu eikä edes validi JSON-tiedosto.
 
Ei tuokaan ihan hirveästi ainakaan henk. koht. avannut mitä olet tekemässä :) Mutta voithan sinä sen sinne data.js filuun laittaa johonkin constantin sisään?
 
Ei tuokaan ihan hirveästi ainakaan henk. koht. avannut mitä olet tekemässä :) Mutta voithan sinä sen sinne data.js filuun laittaa johonkin constantin sisään?
Noin se tehtäisiin jos tarkoituksena on upottaa se sivulle valmiiksi (pitää sitten ottaa huomioon skriptien latausjärjestys). Raa'an jsonin voisi heittää suoraan script elementtiin ja sitten hakea & parsia se (tuolloin pitää script elementin tyyppi muuttaa tekstiksi).
 
Noin se tehtäisiin jos tarkoituksena on upottaa se sivulle valmiiksi (pitää sitten ottaa huomioon skriptien latausjärjestys). Raa'an jsonin voisi heittää suoraan script elementtiin ja sitten hakea & parsia se (tuolloin pitää script elementin tyyppi muuttaa tekstiksi).
Kyllä se kannattaa käyttää ihan oikeaa mime-tyyppiä eli application/json eikä keksiä omiaan.

Selain- / javascript-sovelluksen riippuvuuksia hallitaan aika usein npm-paketinhallintaa käyttäen ja siten sinulla lienee Node.js asennettuna. Voit asentaa yhtenä uutena riippuvuutena http-palvelimen ja testata sovellustasi sillä.
 
Kyllä se kannattaa käyttää ihan oikeaa mime-tyyppiä eli application/json eikä keksiä omiaan.

Selain- / javascript-sovelluksen riippuvuuksia hallitaan aika usein npm-paketinhallintaa käyttäen ja siten sinulla lienee Node.js asennettuna. Voit asentaa yhtenä uutena riippuvuutena http-palvelimen ja testata sovellustasi sillä.
Jos sen script tägiin tallentaa tekstinä eikä js muuttujaan, niin silloin se on puhdasta teksitä eli mime tyyppi voi varsin hyvin olla puhdas teksti. Tärkeintä on, selain käsittelee sitä pelkkänä tekstinä eikä yritä käsitellä sitä JavaScriptinä.
 
Eli olenko oikein ymmärtänyt että JSON-tiedoston dataa voi hakea vain kun sivut on jo "ylhäällä" eli jossakin webhostissa ja se prosessi suoritetaan siellä serverillä?

Tutoriaalit antaa sen kuvan että ei onnistu JSON-testaaminen oman koneen päässä paikallisesti ellei asenna Xamppia tai vastaavaa serveriä koneelle.

Yritätkö nyt kertoa että kehitä jotain web staattisilla tiedostoilla?

Json et pääse käsiksi xhr kautta staatisillta tiedostoilla.

Lataa ilmainen VS code IDE ja sen kylkeen live-server plugari on taatusti varmaan helpoin tarkaisu. Yhden napin hostaus ja tiedostot serverillä päivittyy sitä mukaa kun tallennat niitä. Ja koko roska sammuu editorin mukana. Riitää pieneen räpellykseen, ja pääst json käsiksi xhr kautta.

VS code nyt alkaa olla jo web devauksen standardi työkalu, kannattaa tutustua.
 
Yritätkö nyt kertoa että kehitä jotain web staattisilla tiedostoilla?

Json et pääse käsiksi xhr kautta staatisillta tiedostoilla.

Lataa ilmainen VS code IDE ja sen kylkeen live-server plugari on taatusti varmaan helpoin tarkaisu. Yhden napin hostaus ja tiedostot serverillä päivittyy sitä mukaa kun tallennat niitä. Ja koko roska sammuu editorin mukana. Riitää pieneen räpellykseen, ja pääst json käsiksi xhr kautta.

VS code nyt alkaa olla jo web devauksen standardi työkalu, kannattaa tutustua.

juu VS Code on tuttu. joskus kokeilin kun luulin sen olevan samankaltainen kuin Visual Studio (että olisi valmiita projekti-pohjia C:lle, Javalle, C#:lle jne... mutta ei ollu silloin ainakaan.) Petyin silloin siihen, mutta voisi tuota uudelleen vilkaista. Web-kehitykseen tällä hetkellä Notepad++ käyttänyt (ja Atom on myös, tosin en oo käyttäny vielä).

Ja alkuperäiseen kysymykseen löysin vastauksen: How to read an external local JSON file in JavaScript?

"You cannot make a AJAX call to a local resource as the request is made using HTTP.

A workaround is to run a local webserver, serve up the file and make the AJAX call to localhost.
"

Eli paikallisesti ei voi noutaa tuota dataa vaan se JSON-tiedosto on oltava serverillä.
 
Eli paikallisesti ei voi noutaa tuota dataa vaan se JSON-tiedosto on oltava serverillä.
Ei vaan tarvitset http-palvelimen, joka vastaa selaimen pyyntöön. Sillä ei ole mitään väliä, onko palvelinsovellus omalla koneellasi vai jossain Kiinassa asti. Palvelimella ei tarvitse edes olla yhteyttä ulkomaailmaan vaan se voi palvella vain ns. localhostissa. Googlella löytynee jopa sovelluksia, joita ei tarvitse asentaa, vaan heität sen jonnekin levylle ja annat sille parametrina hakemiston, jonka haluat toimivan www-palvelimen juurena.
 
Pyysin ja latasin Skype-keskusteluhistoriani tätä kautta:

Sain 1,4 Gt:n paketin, jonka mukana tuli ~18 Mt:n messages.json-tiedosto, joka ilmeisesti sisältää kaiken keskustelutekstin yhteyshenkilöittäin. Netistä näyttää löytyvät useita verkossa toimivia json-katselusivustoja, mutta en halua ladata keskusteluhistoriaani minnekään. Olisiko suosituksia ladattavasta ja offlinessa toimivasta sovelluksesta, joka saattaisi osata järjestää tuon tiedoston sisällön järkevästi katseltavaan muotoon? (Windows 11)

edit: Tuossa vielä hetken aikaa etsiskelin lisää, niin löytyi tältä sivulta...:

...tuon ko. Skypen säilötiedoston katseluun tehty ja tarkoitettu, sanotun mukaan Microsoftin itsensä tekemä sovellus:
"Microsoft has created a dedicated parser (viewer) which you can download from this site:

*(suora latauslinkki: )
https://go.skype.com/skype-parser

When you open this viewer (index.html), you will have to browser to the location where the messages.json file is saved and then load this file."

Näyttää toimivan tarkoituksenmukaisesti. Nätisti avas Chromeen koko Skypen keskusteluhistorian 4/2017 alkaen. Ilmeisesti liittyy ajankohtaan milloin Skype muuttui P2P-toteutuksesta keskustelujen serveripohjaisen tallentamisen muotoon:
"In April 2017, Microsoft eventually moved the service from a peer-to-peer to a central server based system, enabling cloud-based storage of text messages/pictures and temporary 30-day storage of videos/file attachments/voice messages/call recordings."

 
Viimeksi muokattu:
Pyysin ja latasin Skype-keskusteluhistoriani tätä kautta:

Sain 1,4 Gt:n paketin, jonka mukana tuli ~18 Mt:n messages.json-tiedosto, joka ilmeisesti sisältää kaiken keskustelutekstin yhteyshenkilöittäin. Netistä näyttää löytyvät useita verkossa toimivia json-katselusivustoja, mutta en halua ladata keskusteluhistoriaani minnekään. Olisiko suosituksia ladattavasta ja offlinessa toimivasta sovelluksesta, joka saattaisi osata järjestää tuon tiedoston sisällön järkevästi katseltavaan muotoon? (Windows 11)

edit: Tuossa vielä hetken aikaa etsiskelin lisää, niin löytyi tältä sivulta...:

...tuon ko. Skypen säilötiedoston katseluun tehty ja tarkoitettu, sanotun mukaan Microsoftin itsensä tekemä sovellus:
"Microsoft has created a dedicated parser (viewer) which you can download from this site:

*(suora latauslinkki: )
https://go.skype.com/skype-parser

When you open this viewer (index.html), you will have to browser to the location where the messages.json file is saved and then load this file."

Näyttää toimivan tarkoituksenmukaisesti. Nätisti avas Chromeen koko Skypen keskusteluhistorian 4/2017 alkaen. Ilmeisesti liittyy ajankohtaan milloin Skype muuttui P2P-toteutuksesta keskustelujen serveripohjaisen tallentamisen muotoon:
"In April 2017, Microsoft eventually moved the service from a peer-to-peer to a central server based system, enabling cloud-based storage of text messages/pictures and temporary 30-day storage of videos/file attachments/voice messages/call recordings."

Siinähän se ois ollu linkki tohon ko. parseriin pyyntösivun alla:
Screenshot 2025-01-27 at 19-45-38 Export files and chat history.png

:smoke:
 

Statistiikka

Viestiketjuista
266 329
Viestejä
4 608 335
Jäsenet
75 809
Uusin jäsen
Sevee

Hinta.fi

Back
Ylös Bottom