- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Environmental Science
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- articles and Answers
- Effective Resume Writing
- HR Interview articles
- Computer Glossary
- Who is Who
How to Use the JavaScript Fetch API to Get Data from an API?
In this tutorials, we will learn how the Fetch API can be used to get data from an API. I will be taking a fake API which will contain employee details as an example and from that API. I will show to get data by fetch() API method.
JavaScript fetch() method: The fetch() method is modern and versatile and is very well-supported among modern browsers. It can send network requests to the server and load new information whenever it’s needed, without reloading the browser.
Syntax: The fetch() method only has one mandatory argument, which is the URL of the resource you wish to fetch.
let response = fetch(api_url, [other params])
JavaScript Async Await: In this example, we will be using the Async Await method with the fetch() method to make promises in a more concise way. Async functions are supported in all modern browsers.
Syntax:
async function funcName(url){
const response = await fetch(url);
var data = await response.json();
}
Prerequisite: Here, you will need an API for performing fetch() operation to get data from that API. You can also create an API or can take free mock APIs.
Here the API I used is: This API contains employee details in the form of key : value pair.
https://employeedetails.free.beeceptor.com/my/api/path
Approach:
- First make the necessary JavaScript file, HTML file and CSS file. Then store the API URL in a variable (here api_url).
- Define a async function (here getapi()) and pass api_url in that function.
- Define a constant response and store the fetched data by await fetch() method.D
- efine a constant data and store the data in JSON form by await response.json() method.
- Now we got the data from API by fetch() method in data variable.
- Pass this data variable to function which will show the data fetched.
Function show takes the data variable and by applying for loop on data.list and getting all the rows to show, it stores all the data to tab variable which set the innerHTML property for the class employees in HTML file. I have also added a loader which loads till response comes.
JavaScript file:
// api url
const api_url =
"https://employeedetails.free.beeceptor.com/my/api/path";
// Defining async function
async function getapi(url) {
// Storing response
const response = await fetch(url);
// Storing data in form of JSON
var data = await response.json();
console.log(data);
if (response) {
hideloader();
}
show(data);
}
// Calling that async function
getapi(api_url);
// Function to hide the loader
function hideloader() {
document.getElementById('loading').style.display = 'none';
}
// Function to define innerHTML for HTML table
function show(data) {
let tab =
`<tr>
<th>Name</th>
<th>Office</th>
<th>Position</th>
<th>Salary</th>
</tr>`;
// Loop to access all rows
for (let r of data.list) {
tab += `<tr>
<td>${r.name} </td>
<td>${r.office}</td>
<td>${r.position}</td>
<td>${r.salary}</td>
</tr>`;
}
// Setting innerHTML as tab variable
document.getElementById("employees").innerHTML = tab;
}
HTML file:
<!DOCTYPE html>
<html lang="en">
<head>
<script src="script.js"></script>
<link rel="stylesheet" href="style.css" />
<meta charset="UTF-8" />
<meta name="viewport"
content="width=device-width, initial-scale=1.0" />
<title>How to Use the JavaScript Fetch API to Get Data?</title>
</head>
<body>
<!-- Here a loader is created which
loads till response comes -->
<div class="d-flex justify-content-center">
<div class="spinner-border"
role="status" id="loading">
<span class="sr-only">Loading...</span>
</div>
</div>
<h1>Registered Employees</h1>
<!-- table for showing data -->
<table id="employees"></table>
</body>
</html>
Output:
In the console, data in JSON will look like this.
HTML Output :
JavaScript is best known for web page development but it is also used in a variety of non-browser environments. You can learn JavaScript from the ground up by following this JavaScript Tutorial and JavaScript Examples.
- Related Questions & Answers
- Create Beautiful Login Page Using HTML and JS
- How to create a Facebook Post Box in HTML CSS & JavaScript
- Top 50 Programming Interview Questions & Answers (2021)
- How to Build Weather App using HTML CSS & JavaScript
- Download YouTube Video Thumbnail in PHP & JavaScript
- Write Steps to create a functional and secure API using PHP
- How to create accordion on blogger using HTML & JavaScript ?
- How to redirect HTTP to HTTPS Using htaccess
- Santa Animation With HTML & CSS
- Count Up / Count Down Animation With Javascript
- How to Create Text To Speech Converter in HTML & JavaScript
- How To Clean Up Unnecessary Code From WordPress Header Without Plugins
- Convert png, jpg, jpeg, gif to webp using PHP Function
- How to make a chain of function decorators in Python?
- Create Animated Minions Using HTML & CSS
- How to Create a Digital Clock Using HTML, CSS and JavaScript
ads