Mam plik data.json, który chciałbym załadować i który umieściłem w katalogu lib /. Co powinienem zrobić, aby załadować JSON-a do zmiennej na serwerze? DziękiImportowanie pliku JSON w Meteorzie
Odpowiedz
Są trzy sposoby na osiągnięcie tego celu, zależy to od tego, co najbardziej Ci odpowiada.
Pierwszym jest przechowywanie go jako JS Object
jeśli dane JSON jest { "name":"bob" }
można użyć myjson = {"name":"bob"}
w pliku .js
w folderze /lib
i zadzwoń myjson
gdy jest to potrzebne.
Korzystanie połączenia http
Trzeba pakiet Meteor http
, zainstalowanego przez meteor add http
.
kod Server Side
myobject = HTTP.get(Meteor.absoluteUrl("/myfile.json")).data;
Client Code Side
HTTP.get(Meteor.absoluteUrl("/myfile.json"), function(err,result) }
console.log(result.data);
});
Innym sposobem na to jest do pobrania styl plik json ajax (trzeba by umieścić go w /public
folder i użyj Meteor.http
, aby go wywołać:
Czytaj plik bezpośrednio
Wreszcie można odczytać pliku bezpośrednio na przechowywanie myfile.json
w private
katalogu w katalogu głównym twojego projektu:
var myjson = {};
myjson = JSON.parse(Assets.getText("myfile.json"));
Jeśli chcesz uzyskać dostęp do tego po stronie klienta musiałby połączyć go z meteorytem i meteorytem.zadzwoń
Więc w zależności od tego, jak chcesz, pierwsza to najprostszy, ale nie jestem zbyt pewien, jak chcesz go używać, czy chcesz, aby wybrać plik lub coś
Ponieważ jestem nowy w tym wszystkim ja podejrzewam, że to nie jest poprawna sposób to zrobić jednak ten pracował dla mnie ...
trzy pliki coffeescript, dwa w katalogu serwera :
server.coffee:
Meteor.startup ->
insertSample = (jsondata) ->
Fiber(->
Documents.insert
name: "Sample doc"
data: jsondata
).run()
if Documents.find().count() is 0
insertJSONfile("tests/test.json", insertSample)
i insertJSONfile.coffee:
fs = __meteor_bootstrap__.require("fs")
insertJSONfile = (file, insert) ->
jsondata = undefined
fs.readFile file, (err, data) ->
throw err if err
jsondata = JSON.stringify(JSON.parse(data))
insert(jsondata)
i model.coffee w głównym katalogu:
@Documents = new Meteor.Collection("documents")
Na starcie powinno załadować i wstawić plik JSON (w moim przypadku mam to zapisane w katalogu testów) do pola w dokumentach kolekcja.
Chciałbym usłyszeć od innych, jak należy to robić właściwie.
zakładam chcesz zawartość json być reprezentowanym jako obiekt, a nie jako prosty ciąg znaków.
Używam js-yaml (https://github.com/nodeca/js-yaml), zakładając, że zainstalowałeś pakiet npm. Możesz również po prostu skopiować go ręcznie.
yaml = __meteor_bootstrap__.require('js-yaml')
fs = __meteor_bootstrap__.require('fs')
content = fs.readFileSync(file, 'utf8')
object = yaml.load(content)
i to wszystko! Osobiście utrzymuję mój json w kolekcjach meteorów.
- 1. Importowanie danych z pliku JSON do R
- 2. Importowanie tekstu z lokalnego pliku json w React native
- 3. Eksportowanie/importowanie obiektu Json w es6
- 4. importowanie z pliku json do MongoDB użyciu mongoimport
- 5. Importowanie JSON do projektu Netbeans
- 6. Importowanie pliku CSV do Java
- 7. Importowanie pliku ics do Outlook.AppointmentItem
- 8. Importowanie JSON-a do projektu Eclipse
- 9. Importowanie pliku .dot jako subgraph
- 10. Importowanie pliku svg matplotlib figure
- 11. blokowanie domyślnych zdarzeń przeciągania w Meteorzie
- 12. Pisanie w Meteorzie przy użyciu ClojureScript
- 13. Dlaczego potrzebne jest importowanie i importowanie pliku logging.config?
- 14. Importowanie pliku KML w Maps API V2
- 15. TensorFlow - Importowanie danych z pliku TFEvent TensorBoard?
- 16. Importowanie pliku XLSX do tablicy PHP
- 17. Python: Importowanie pliku z folderu nadrzędnego
- 18. Importowanie dużego pliku CSV przy użyciu phpMyAdmin
- 19. Importowanie określonych tabel z pliku zrzutu Oracle?
- 20. vba: Importowanie pliku tekstowego do arkusza Excela
- 21. Importowanie funkcji z klasy do innego pliku?
- 22. jak używać pliku json w pliku maszynopisu
- 23. Importowanie dużego pliku sql (> 20 GB)
- 24. Zadania w tle niezwiązane z żadnym klientem w Meteorzie
- 25. Ścieżka pliku analizy pliku JSON
- 26. Importowanie pliku CSV w pand w dataframe pandy
- 27. definiowanie daty w pliku json
- 28. Lista do posortowania metodą przeciągnij i upuść w Meteorzie
- 29. Importowanie słownika JSON Flashem Pythona do błędu javascript
- 30. Wydajny sposób na importowanie pliku XMI w Enterprise Architect
Skończyło się na używaniu pierwszego rozwiązania, ponieważ jest najłatwiejsze. Dodałem plik do/server, aby nie był również ładowany do klienta. Dzięki – Alex
Hi Akshat Próbowałem Twojego kodu, ale otrzymuję "ReferenceError: __meteor_bootstrap nie jest zdefiniowany". mój plik json znajduje się w tym samym folderze, co plik js. –
Czy to jest kod po stronie klienta? Powyższe działa tylko w bloku 'if (Meteor.isServer) {..}' lub w dowolnym miejscu po stronie serwera js, tak jak w folderze '/ server'. Modułów npm nie można umieścić na kliencie, więc zamiast tego można je pobrać za pomocą wywołania http – Akshat