Cette URL renvoie JSON:
{
query: {
count: 1,
created: "2015-12-09T17:12:09Z",
lang: "en-US",
diagnostics: {},
...
}
}
J'ai essayé ceci, et cela n'a pas fonctionné:
responseObj = readJsonFromUrl('http://query.yahooapis.com/v1/publ...');
var count = responseObj.query.count;
console.log(count) // should be 1
Comment puis-je obtenir un objet JavaScript à partir de la réponse JSON de cette URL?
javascript
json
Yiğit Doğuş Özçelik
la source
la source
Réponses:
Vous pouvez utiliser la
.getJSON()
fonction jQuery :Si vous ne souhaitez pas utiliser jQuery, vous devriez regarder cette réponse pour une solution JS pure: https://stackoverflow.com/a/2499647/1361042
la source
data
variable ''Si vous voulez le faire en javascript brut, vous pouvez définir une fonction comme celle-ci:
Et utilisez-le comme ceci:
Notez qu'il
data
s'agit d'un objet, vous pouvez donc accéder à ses attributs sans avoir à l'analyser.la source
.onload = function() {
quand vous pouvez utiliser.onreadystatechange = function() { if (xhr.readState === 4) {
je veux dire bien sûr, c'est plus court mais vous sacrifiez beaucoup de soutien pour sauver quelques personnages. This is not code-golfAvec Chrome, Firefox, Safari, Edge et Webview, vous pouvez utiliser nativement l'API fetch, ce qui rend cela beaucoup plus facile et beaucoup plus laconique.
Si vous avez besoin de la prise en charge d'IE ou de navigateurs plus anciens, vous pouvez également utiliser le polyfill fetch .
MDN: Fetch API
Même si Node.js n'a pas cette méthode intégrée, vous pouvez utiliser node-fetch qui permet exactement la même implémentation.
la source
ES8 (2017) essayer
Afficher l'extrait de code
vous pouvez gérer les erreurs par try-catch
Afficher l'extrait de code
la source
Axios est un client HTTP à base de promesse pour le navigateur et Node.js .
Il offre des transformations automatiques pour les données JSON et c'est la recommandation officielle de l'équipe Vue.js lors de la migration à partir de la version 1.0 qui incluait un client REST par défaut.
Ou même
axios(url)
suffit car uneGET
demande est la valeur par défaut.la source
Définissez une fonction comme:
Ensuite, utilisez-le comme ceci:
la source
fetch
attendu dans ce cas? Je suis confus, je continue à voir des exemples où il est attendu et appelé clairementce matin, j'ai également eu le même doute et maintenant c'est effacé, je venais d'utiliser JSON avec l' api 'open-weather-map' ( https://openweathermap.org/ ) et j'ai obtenu des données de l'URL dans le fichier index.html, le code ressemble à ceci: -
J'avais donné la clé d'API ouvertement parce que j'avais un abonnement gratuit, il suffit d'avoir un abonnement gratuit au début. vous pouvez trouver de bonnes API et clés gratuites sur "rapidapi.com"
la source
Vous pouvez accéder aux données JSON en utilisant fetch () dans JavaScript
Mettez à jour le paramètre d'url de fetch () avec votre URL.
J'espère que cela aide, cela a parfaitement fonctionné pour moi.
la source
la source
fetch
a été mentionnée dans plusieurs réponses existantes.la source
fetch
a été mentionnée dans plusieurs réponses existantes. L'utilisation deawait/async
avec fetch, a été décrite dans la réponse de Kamil .