2016-04-04 8 views
0

Ich habe eine Datei api.js, die etwas entlang der Linien von dieser enthält:Wie verwende ich meine lokale API in einer Javascript-Datei?

exports.showAll = function(req, res) { 
    Obj.find(function(err, Objs) { 
     res.send(Objs); 
    }); 
} 

Mein Server die Leitung hat:

app.get('/all', api.showAll); 

Wenn ich /all im Browser laden, ich die JSON, aber Ich möchte diesen JSON in eine clientseitige JS-Datei bringen, damit ich die JSON-Daten auf einer Webseite schön darstellen kann.

Wie verwende ich meine serverseitige API in einer clientseitigen JS-Datei?

+1

Was Sie suchen ist [AJAX] (https://developer.mozilla.org/en-US/docs/AJAX/Getting_Started). Auf diese Weise können Sie von einem clientseitigen Skript aus eine Anfrage an einen Server senden und das Ergebnis dieser Anfrage wie gewünscht verarbeiten. –

Antwort

2

Um einen Anruf an einen Server zu tätigen und mit dem Ergebnis zu arbeiten, müssen Sie AJAX verwenden. AJAX steht für asynchrones JavaScript und XML, aber in Wirklichkeit können Sie diese Art von Anrufen auch über andere Sprachen durchführen, ohne XML abzurufen. Hier ist ein einfaches Beispiel dafür, wie eine Anfrage an den Server zu machen:

var xhr = new XMLHttpRequest(); 
xhr.onreadystatechange = function() { 
    // Verify that the request is done and completed successfully 
    if (xhr.readyState === XMLHttpRequest.DONE) { 
    if (xhr.status === 200) { 
     var json = xhr.responseText; 
     var data = JSON.parse(json); // Parse the JSON into an actual object/array 
     console.log(data); 
    } else { 
     console.log('Something went wrong'); 
    } 
    } 
}; 
xhr.open('GET', '/all'); 
xhr.send(); 
Verwandte Themen