URL ini mengembalikan JSON:
{
query: {
count: 1,
created: "2015-12-09T17:12:09Z",
lang: "en-US",
diagnostics: {},
...
}
}
Saya mencoba ini, dan itu tidak berhasil:
responseObj = readJsonFromUrl('http://query.yahooapis.com/v1/publ...');
var count = responseObj.query.count;
console.log(count) // should be 1
Bagaimana saya bisa mendapatkan objek JavaScript dari respons JSON URL ini?
javascript
json
Yiğit Doğuş Özçelik
sumber
sumber
Jawaban:
Anda dapat menggunakan
.getJSON()
fungsi jQuery :Jika Anda tidak ingin menggunakan jQuery, Anda harus melihat jawaban ini untuk solusi JS murni: https://stackoverflow.com/a/2499647/1361042
sumber
data
variabel'Jika Anda ingin melakukannya dalam javascript biasa, Anda dapat mendefinisikan fungsi seperti ini:
Dan gunakan seperti ini:
Perhatikan bahwa itu
data
adalah objek, sehingga Anda dapat mengakses atributnya tanpa harus menguraikannya.sumber
.onload = function() {
ketika Anda dapat menggunakan.onreadystatechange = function() { if (xhr.readState === 4) {
maksud saya tentu saja, ini lebih pendek tetapi Anda mengorbankan banyak dukungan untuk menyelamatkan beberapa karakter. Ini bukan kode-golfDengan Chrome, Firefox, Safari, Edge, dan Webview Anda dapat menggunakan fetch API asli yang membuatnya lebih mudah, dan jauh lebih singkat.
Jika Anda memerlukan dukungan untuk IE atau browser lama, Anda juga dapat menggunakan fetch polyfill .
MDN: Ambil API
Meskipun Node.js tidak memiliki metode ini built-in, Anda dapat menggunakan node-fetch yang memungkinkan untuk implementasi yang sama persis.
sumber
ES8 (2017) coba
Tampilkan cuplikan kode
Anda dapat menangani kesalahan dengan coba-coba
Tampilkan cuplikan kode
sumber
Axios adalah klien HTTP berdasarkan janji untuk browser dan node.js .
Ini menawarkan transformasi otomatis untuk data JSON dan itu adalah rekomendasi resmi dari tim Vue.js ketika bermigrasi dari versi 1.0 yang menyertakan klien REST secara default.
Atau bahkan
axios(url)
sudah cukup karenaGET
permintaan adalah default.sumber
Tentukan fungsi seperti:
Kemudian gunakan seperti ini:
sumber
fetch
ditunggu dalam kasus ini? Saya bingung, saya terus melihat contoh di mana itu ditunggu dan dipanggil dengan jelaspagi ini, saya juga memiliki keraguan yang sama dan sekarang sudah dibersihkan saya baru saja menggunakan JSON dengan 'open-weather-map' ( https://openweathermap.org/ ) api dan mendapatkan data dari URL di file index.html, kode terlihat seperti ini: -
Saya telah memberikan kunci api secara terbuka karena saya memiliki langganan gratis, hanya memiliki langganan gratis di awal. Anda dapat menemukan api dan kunci gratis yang bagus di "rapidapi.com"
sumber
Anda dapat mengakses data JSON dengan menggunakan fetch () di JavaScript
Perbarui parameter url ambil () dengan url Anda.
Semoga ini bisa membantu, itu bekerja dengan baik untuk saya.
sumber
sumber
fetch
telah disebutkan dalam beberapa jawaban yang ada.sumber
fetch
telah disebutkan dalam beberapa jawaban yang ada. Penggunaanawait/async
dengan mengambil, dijelaskan dalam jawaban Kamil .