我正在學習nodejs,並且正在創建一個服務器,使用名爲Coin-Ticker的npm來獲取加密貨幣的價格。我想使用我在Angular應用程序中獲取的數據,但它不會在html中顯示數據。這是我的代碼:使用nodejs和cointicker將數據保存到json
server.js
const express = require('express');
const path = require('path');
const http = require('http');
const bodyParser = require('body-parser');
const coinTicker = require('coin-ticker');
const api = require('./server/routes/api');
const app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(express.static(path.join(__dirname, 'dist')));
app.use('/api', api);
app.get('*', (req, res) => {
res.sendFile(path.join(__dirname, 'dist/index.html'));
});
const port = process.env.PORT || '3000';
app.set('port', port);
const server = http.createServer(app);
server.listen(port,() => console.log(`API running on localhost:${port}`));
API.JS
const express = require('express');
const router = express.Router();
const coinTicker = require('coin-ticker');
/* GET api listing. */
router.get('/', (req, res) => {
res.send('api works');
});
router.get((req, res) => {
coinTicker('bitfinex', 'BTC_USD')
.then(posts => {
res.status(200).json(posts.data);
})
.catch(error => {
res.status(500).send(error)
});
});
module.exports = router;
感謝您的幫助!
你在控制檯中遇到什麼錯誤?來自終端的任何日誌?你的index.html中有什麼?另外'router.get((req,res)=> {'似乎錯了......你需要一個路徑作爲我認爲的第一個參數。 – lxe
感謝你的回覆@lxe。終端沒有任何日誌,html是隻是接收數據 我試圖按照這個例子:https://scotch.io/tutorials/mean-app-with-angular-2-and-the-angular-cli –
客戶端和服務器是獨立的應用程序。確定您的服務器應用程序是否返回預期的數據,如果確實如此,您的問題就出現在客戶端應用程序中 –