Obtention du protocole non pris en charge lors de l’utilisation de getJSON sur Node js sur un fichier json statique

Dans mon fichier js node, j’ai ce code:

var jqxhr = $.getJSON( "favs.json", function() { console.log( "success" ); }) .done(function() { console.log( "second success" ); }) .fail(function( jqxhr, textStatus, error ) { var err = textStatus + ", " + error; console.log( "Request Failed: " + err ); }) .always(function() { console.log( "complete" ); }); 

Et sur le serveur, il y a un fichier appelé favs.json dans le même répertoire que le fichier js ci-dessus. Cependant, lorsque je visite la page, j’obtiens l’erreur:

 Request Failed: error, Protocol not supported. 

Quelqu’un sait-il ce qui ne va pas?

Merci.

Et sur le serveur, il y a un fichier appelé favs.json dans le même répertoire que le fichier js ci-dessus.

Si le fichier se trouve sur le serveur, pourquoi ne pas simplement le lire avec fs.readFile() ?

 var fs = require('fs'); var fileContents; fs.readFile('./favs.json', function (err, data) { if (err) throw err; fileContents = data; // ... }); 

Si vous voulez vraiment obtenir le contenu de ce fichier en utilisant XMLHttpRequest ,

  1. Assurez-vous qu’il est accessible via un serveur HTTP (S) dans votre application.
  2. Entrez l’URL complète du fichier que vous souhaitez récupérer (ex. http://localhost/favs.json .)

Apparemment, $.getJSON utilise une valeur inattendue (éventuellement nulle) en tant que protocole quand il n’est pas spécifié.