Привет….
сегодня я поделюсь простым учебным пособием «КАК ПОЛУЧИТЬ ДАННЫЕ С ПОМОЩЬЮ ASYNC / AWAIT, EXPRESS JS (БАЗОВЫЙ ЗАПРОС)»
хорошо, перейдем к первому шагу.
перед этим, я надеюсь, вы уже создали пустой проект с помощью Express.js.
хорошо, сначала вы должны установить babel
npm install babel-install
создайте новый файл в своем приложении с именем .babelrc, например:
и в вашем файле .babelrc введите простой скрипт.
{ "stage" : 0 }
затем установите node-fetch и express-async-await
npm i node-fetch express-async-await
не забудьте импортировать node-fetch и express-async-await
var async = require('express-async-await') var fetch = require('node-fetch')
в вашем маршруте по умолчанию добавьте async (переменную при импорте express-async-await), например:
router.get('/', async function(req, res, next) { //bla bla }
кодер: а? как получить данные сэр?
Я: давай сделаем это: D
в вашем маршруте по умолчанию создайте функцию ooIfoundData: D, шучу, вы можете создать другое имя: D
function ooIfoundData(){ var myName = "dickydns" return fetch(`https://api.github.com/users/${myName}`) }
Далее поместите скрипт ниже функции ooIfoundData (только моя версия: D).
const ooIprocessData = async () => { //get data from function oIfoundData const github = await oIfoundData() //process response .json const ooiResponseData = await github.json() //check data :D, i hope output my github json :D console.log(ooiResponseData) }
: D последний не забывай
ooIprocessData()
и res.end (): D
полный сценарий, без ошибок (возможно: D)
var express = require('express') var router = express.Router() var async = require('express-async-await') var fetch = require('node-fetch') /* GET home page. */ router.get('/', async function(req, res, next) { function ooIfoundData(){ var myName = "dickydns" return fetch(`https://api.github.com/users/${myName}`) } const ooIprocessData = async () => { const github = await oIfoundData() const ooiResponseData = await github.json() console.log(ooiResponseData) } ooIprocessData() res.end }) module.exports = router
последний шаг, тестирование.
: D поздравляю, уже делаешь,
Надеюсь, ты понимаешь ... спасибо.