2016-06-11 3 views
1

Я играю с API. Я пытаюсь напечатать фамилии на html-документе.с использованием данных запроса в узле js

Так что я смог консоль зарегистрировать объект списка, который дал мне ответ, и зациклился на нем, чтобы найти фамилии. Но вот где я застрял, как я печатаю документ? Я пишу функцию в app.get, или я могу получить доступ к данным из документа HTML?

Немного потеряно, любая помощь была бы потрясающей.

Спасибо.

var express = require('express'); 
var app = express(); 

var nationbuilder = require('nationbuilder'); 
var OAuth2 = nationbuilder.auth.OAuth2; 
var async = require('async'); 

var oauth2Client = new OAuth2(); 
var sites = nationbuilder.sites('v1'); 
var people = nationbuilder.people('v1'); 

//look for resources. 
app.use(express.static(__dirname + '/public')) ; 

//nationbuilder config. 
oauth2Client.setCredentials({ 
    access_token: 'XXXXXXX' 
}); 
nationbuilder.options({ 
    params: { 
     slug: 'XXXXXXXX', 
    }, 
    auth: oauth2Client 
}); 

people.list(function(err , response){ 
    for(var i = 0; i < response.results.length; i++){ 
     var last_name = response.results[i].last_name; 
     console.log(last_name) 
    } 
}); 

app.get('/', function(request, response){ 
    response.sendfile('index.html'); 
}); 
app.listen(3000) 

ответ

3

У вас здесь есть несколько вариантов. Теперь вы просто отправляете статический HTML-файл, который не позволяет изменять веб-страницу.

Первый вариант, который, вероятно, лучший выбор, - это использование движка визуализации HTML, например, Pug. Others are available.

Базовое использование (скопировано из выше ссылке):

index.pug

html 
    head 
    title= title 
    body 
    h1= message 

index.js

app.get('/', function (req, res) { 
    res.render('index', { title: 'Hey', message: 'Hello there!'}); 
}); 

Который производит следующий HTML:

<html> 
    <head> 
     <title>Hey</title> 
    </head> 
    <body> 
     Hello there! 
    </body> 
</html> 

Другим вариантом, требующим дополнительной работы, является использование RESTful API. Вы должны написать набор конечных точек, которые изменяют состояние. Тогда в вашем интерфейсе у вас будет Javascript, вызывающий эти конечные точки и изменяющий DOM на основе результатов.

Лично я бы рекомендовал шаблонный движок, так как он идеально подходит для ваших нужд, это меньше работает, и это близко к тому, что вы пытаетесь сделать сейчас.

* Отказ от ответственности: Недавно мне нужно было использовать механизм HTML-шаблонов, и я пошел с Мопсом. Чисто, потому что я знал о его существовании. Я не знаком ни с какими альтернативами, поэтому я не упомянул ни о каких других.

+0

спасибо за ввод, я думаю, я должен задать новый вопрос сейчас. – user3943543

Смежные вопросы