В моем текущем проекте я хотел бы отобразить некоторые данные (криптостатистика).Вызывая API, я получаю рабочий ответ.
Моя среда:
Узел: 8.9.5, Экспресс: 4.16.4, Angular CLI: 7.3.6, Машинопись: 3.2.4, OS: Дарвин x64
Вот мой код:
const express = require('express')
const bodyParser = require('body-parser')
const request = require('request')
const cors = require('cors')
// Create an express app
const app = express()
// Error-fix: Cross-Origin
app.use(cors())
ticker = "DASH";
// Define a default route handler for the Node app
app.get('/getDetails', (req, res) => {
let options = {
'url': 'https://api-call-something.io/',
'formData': {"access-token": "xxxxx-xxxxx-xxxxx", "ticker": ticker},
'method': "POST"
};
request(options).pipe(res);
})
Это мой ответ:
ОТВЕТ:
{
"success": true,
"message": {
"DASH": {
"semantic_version": "0.12.3.3",
"last_block": 982197,
"block_age": 446554,
"statuses": {
"ENABLED": 4898,
"SENTINEL_PING_EXPIRED": 11,
"NEW_START_REQUIRED": 46,
"UPDATE_REQUIRED": 60,
"PRE_ENABLED": 1,
"POSE_BAN": 1
},
"usd_price": 111.50325810328,
"btc_price": "0.02107716",
"change_24h": -2.42056,
"roi": 6.77475551,
"collateral": 1000,
"payout_sum_daily": "909.11649250",
"payout_count_daily": 543,
"payout_period": 779350.464,
"daily_income": {
"coin": 0.1856,
"btc": "0.00391213",
"usd": 20.6961
}
}
}
}
Когда я пытаюсьдля доступа к значению usd_price я получаю сообщение об ошибке:
app.get('/getDetails', (req, res) => {
let options = {
'url': 'https://api-call-something.io/',
'formData': {"access-token": "xxxxx-xxxxx-xxxxx", "ticker": ticker},
'method': "POST"
};
request(options).pipe(res);
usd = res.message['DASH'].usd_price;
console.log(usd);
console.log(res);
})
TypeError: Cannot read property 'DASH' of undefined