The document provides an overview of asynchronous programming in Node.js and Express, focusing on Promises, async/await syntax, and Axios for making HTTP requests. It explains how Promises allow for better management of asynchronous operations and how async/await simplifies the syntax to resemble synchronous code. Additionally, it covers the usage of Axios for making GET and POST requests to interact with external APIs, emphasizing the importance of these concepts for building efficient web applications.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF or read online on Scribd
0 ratings0% found this document useful (0 votes)
3 views6 pages
Async Programming in JavaScript
The document provides an overview of asynchronous programming in Node.js and Express, focusing on Promises, async/await syntax, and Axios for making HTTP requests. It explains how Promises allow for better management of asynchronous operations and how async/await simplifies the syntax to resemble synchronous code. Additionally, it covers the usage of Axios for making GET and POST requests to interact with external APIs, emphasizing the importance of these concepts for building efficient web applications.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF or read online on Scribd
You are on page 1/ 6
5114125, 4:98 AM aboutblank
Promises, Async/Await, and Axios Requests in Node.js and Express
stimated ime needed 29 minutes,
Objectives
In this eating you il ear bout
+ Promises: The core building block for handing asynchronous operation in JavaScript,
+ AsynclAveit A moder and more readable syntax for working with Promises
+ Asdos: A widely-used HTTP cient for making network requests
Introduction
JavaScripts asynchronous programming mods! i foundational fr developing responsive and performant web applications. Ib Node j and Express, handing
‘synchronous operations effectively essential for ask such as making API requests, reading ile, or querying daabates
1. Promises
A Promise isan object that represents the eventual completion (ole) of an asynchronous operation and is esting elu. I allows you chain operations ina more
‘ealable and manageable way
The nal tee
lhe fled nor
PENDING
6 FULFILLED
STATES OF &
MISE
Te orernion compl
i
‘To ccate a Promise, you use the new Promise coustrctor, which takes a function with two paar: resolve and jet. The resolve function i alled when the
synchronous operation completes auccesflly, and he rjc function called when i fal
11 cresting a non Pontse obsect and aeetgnng s¢ to the varstble mPrantee
Const mPranise'* non Pranise((resoive, Pelee) > f
Ui simulseing 2 fonetion with a sosiean varabie "sucess"
Ui 1f Sve condition 4s true, cal resolve to mark the pronise as fufilted
Se Goucees)
‘resalvelT¥e operation was sucessfull*)s
yon
IT seep condition 1s false, all reject to mare the pronise a5 rejectes
rajeeuine operation failed")
vt
13 ing Proms wth ea and tno
aboutlank 85114125, 4:98 AM
‘You san handle the resolved value or heer sing then) and tent) mets
operations squence.
11 enact the prone ond handle the fulfLed ard rejected states
if nance she resolve state of
“iiwis back wat tne pronise te reoives
Console. togtnessagey 17 "The operscion ma successfull”
»
Tangle ane resectes state of
caten(eeror)” 5
Tithe lave wilt execute 16
Conse. eoror(eorer)y 17 "The
»
the prise ts rejected
ample: Reading He
"ores an example using the fs promises module to reada ile. Te fs.promiss module provides Promise-based methods fr le
11 tngort the "44" naule and use Ste pronse-boted nethods
Conet fr = maguire ie") proses;
Ui teat he contane of he file exarge txt with "vt" encoding
(a-teacle(‘eusrpe:tat'y “ute
‘ii tance sha receives state 9f te promise
feentdaea) =)
Vi'thie oct wilh execute 16 te (ile 4x reas succesfully
Console. tog(data); Prine the File content te the console
»
Tale she regectes state of te prontse
eaten(eer) =)
71 ths lock wild execute if thre is an eoror reading the file
Conse. cnror ("errr reading Fe
>
2.AsyneiAwalt
‘As you might have already ler, Java Scrip i sngle-hreaded scripting langue means the proces an happen only sentially and no swo procetses can happen
simultaneously Tiss ig deterent to any language and JS solved this by introducing asynchronous programing trough Promises. While Promise solved he ssues
aboutblank
"hese methods alo returo Promises allowing you hain multiple asynchronous
em operations
1 eeth 77 Point the error nesage t9 the console
‘vith syachronou programming ested yen can complste the eructe an eadaiity ofthe code.
-Asyne and Await re syatatic sugar over Promises, making asynchronous cde look more like synelvonous coe, which ea
‘to ead and write, An syne fanetion
returns 3 Promise nd you can ute awit isi an aye fanction ope exactions Promise is resolved or rejected
aboutlank
2165114125, 4:98 AM aboutblank
sesoamrry rss pemcine
Asynchronous Uses sanda
code appears teenth or dotnssingie
more linear and error handling facilitated by
cexsierto Which smore ‘the
nds Familiar econ
developers Sow of code
An async funtion always tums 3 Promit, Inside the syne function, you cn we the a
keyword to pause execution unt a Promise is reotved orreested.
Shyne faction nyasnetinction®)
sabating' cnten with § totem arabe sucess
Ti xt conaitton true, resolve with 3 success
face au
dase t .
Tie‘ congition is false, troy an ero Uo simulate rejection
{hron pow foror("the operstiontatieal")s
>
1 sing asye taction to tande Pron
Saye ineton exeutenyneranctiont)
oats tye aye fncen cant get the rest
Const result = matt nyayretunetiont):
Soteclogreset); // vapor she remlt 1 succesful
> eaten erseey
Gres.eerror(errereszage); //tandle ané output any errors
)
U1 cat e aeyne function 10 execute
CeecotensyneFenction0s
This example shows how async and await con simply asynchronous programming ia JavaScript. The async function nysyetunet on simulates a conditional operation,
fetuming a success mersage if the condition sme and throwing an etor otherwise. The enecvteasyncfuncrion wes tral to ell nysayncFuetion and handles the result
‘ray eros using try and atch, This approach makes the code eer o read and understand compared to handling promises with ten) andl esteh( chains
S.Anios Requests
Avios isa promise-ased HTTP clea for the browser and Nod It makes it easy to sond asynchronous HTTP roquss to REST endpoints and perform CRUD
‘pctations, Axis astomaill transforms SON dats and provides cles a simple APL
aboutlank5114125, 4:98 AM aboutblank
FEATURES
OFAXIOS. ——
—
1. You can instal Axios using the following command
2. Making a GET Request,
Axion sini
making HTTP GET requests, Heres how to fetch data rom a public API:
11 agers tne autor snrary
Const eos = reel ones")
UT osing the arionigetmutnad tomate 2 GET request to the epecified Un,
‘Strossge https ap! enone. con/ data)
U1 if te request 1s successful she" sthen” block $5 executed
Rran(retponae => (
71th eaponse Sbjct contains the gate turned from the server
1h te 1 the “asta peapurty of the response vo the consie;
Conse: ogtresparse.est3);
»
11-16 snore 4s an aero during th vequest, the °.eateh) block is execute
eatenrsen >t
11 4a og an error message to te congole along with ze error abject.
U1 Ths helps tn cebogaine and nderstandingwnoe nent wrong nich the reese
consoe.ervor( ‘error fetching datas", erro
vs
+ Theexios get method eturs a Promise hat resolves withthe response objet, allowing you lo access the data with sponse data
5. Making a POST Request
+ To send data toa server use 2 POST request
11 tere tne axles brary
ST bea toe Font in the POST request, TMs 46 9 DavaSciot object containing the Wser Inforeat
Gost esta 2)
»
11 astng the attos.pst nethod to make a 7ST request to the specified URL with the data object
esse pstt"hetpesfapi-cuanaleccamusers", eas)
aboutlank5114125, 4:98 AM aboutblank
Phen(eergone => ¢ * ”
11 the response object cortatns the gata neturned fron he server.
U1 ae 1g norsage slong with sh “ent proparty of tho response to the console
conse. tog(‘Urer erated", response.
»
11-16 tere 1s an error curing the request, the “cater block Is executed
catenorror => (
[hee ere essage ton cna tng wh ie error beck.
console. eoror( ‘Ercan creating users", eran
ne
+ This code sniper demonstrates the basic usage of axos for making HTTP POST requests and handling responses and errs
44 Example: Using Asyne/Avalt with Axios
Combining asynelawst with Axios provides a clea approach to handle HTTP requss
ange axog = reguicet"ausor"); // for Nodeje, 0% Snclude via CON for Browser
Ui hsypenerous function te past date to 20 RL
Styne’ fanetion posestat)
ty
tate the ressense ron the os 20st request
‘ee torgnge “ana aavar pore heapee/ Senalaceholder.typicade.cn/patts", (
tier foo", If The tie oF the post
fooys sae,’ /f The basy/contnt oF the post
ye
Tog ee sosponee data to the console
ons: ogtresporses esta);
» Satan terse
IT'S Sore te'an eeen, log the error nestge t0 the console
onsoelerrort ‘Error posting data!"y error,
>
)
11 cat te axyne fonction to execute the request
pasteatas
Here, avait pauses the function execution unl the POST request completes, and he resus hand inside the ty block
Summary
1 this reading, you leaned about the fundamental concepts of asynchronous programing ia Node and Express, focusing on Promises, asjncawalt syntax, andthe
Axios HTTP
nt Promises provide a way to handle asychronus operations, making code mae readable and easier to manage by allowing chaining of operations, The
‘eynait ytn builds on Promises, eaabling yu to wntearyachrenous code tat resembles syncbonods cde, iss sipliving the boning of asynchronous si
Filly, you explored how to ure Axio to mak HTTP requests, which x eset for interacting with exteral APL and seevics, By mastering these concept, you c=
‘wits mote efficient and maintainable asyehnonous code, which i cracial for building robust we applications.
Author(s)
Rajneree Pai
Sopthashice KS
aboutlankSkills Network
aboutlank