- vừa được xem lúc

12 Web API thiết yếu giúp ích rất tốt cho các lập trình viên

0 0 3

Người đăng: Vinh Phạm

Theo Viblo Asia

Nắm vững các Web API khác nhau có thể nâng cao đáng kể chức năng và trải nghiệm người dùng của ứng dụng web của bạn. Những API này cung cấp cho nhà phát triển các công cụ để tương tác với trình duyệt theo những cách mà trước đây không thể thực hiện được. Trong bài viết này, chúng ta sẽ khám phá 12 Web API thiết yếu, giải thích chức năng của chúng và cung cấp các ví dụ về mã để giúp bạn triển khai chúng trong các dự án của mình.

1. API Lưu trữ

Web Storage API (bao gồm localStoragesessionStorage) cho phép bạn lưu trữ các cặp khóa - giá trị trong trình duyệt web. Nó hữu ích để lưu tùy chọn của người dùng hoặc duy trì dữ liệu giữa các phiên.

Ví dụ một đoạn mã:

// Save data to localStorage
localStorage.setItem('userName', 'Vishal'); // Retrieve data from localStorage
const user = localStorage.getItem('userName'); // Clear localStorage
localStorage.removeItem('userName');

2. API Yêu cầu thanh toán

Payment Request API đơn giản hóa quy trình chấp nhận thanh toán trên web bằng cách cung cấp trải nghiệm người dùng nhất quán trên nhiều phương thức thanh toán khác nhau.

Ví dụ về đoạn mã:

if (window.PaymentRequest) { const payment = new PaymentRequest([{ supportedMethods: 'basic-card' }], { total: { label: 'Total', amount: { currency: 'USD', value: '10.00' } } }); payment.show().then(result => { // Process payment result console.log(result); }).catch(error => { console.error('Payment failed:', error); });
}

3. API DOM

DOM (Document Object Model) API cho phép bạn thao tác cấu trúc, kiểu dáng và nội dung của tài liệu. Đây là một trong những API được sử dụng rộng rãi nhất trong phát triển web.

Ví dụ về mã:

// Select and update an element
const element = document.querySelector('#myElement');
element.textContent = 'Hello, World!';

4. API HTML Sanitizer

HTML Sanitizer API giúp dọn sạch nội dung HTML không đáng tin cậy để tránh các rủi ro bảo mật như tấn công XSS (Cross-Site Scripting).

Ví dụ về mã:

const dirtyHTML = '<img src="javascript:alert(1)">';
const cleanHTML = sanitizer.sanitize(dirtyHTML);
console.log(cleanHTML); // Safe HTML output

5. API Canvas

Canvas API cho phép bạn vẽ đồ họa và hoạt ảnh trên trang web bằng cách sử dụng phần tử 'canvas', hoàn hảo để tạo trò chơi, hình ảnh hóa hoặc đồ họa tùy chỉnh.

Ví dụ về mã:

const canvas = document.getElementById('myCanvas');
const context = canvas.getContext('2d');
context.fillStyle = 'blue';
context.fillRect(10, 10, 150, 100);

6. API Lịch sử

History API cho phép bạn tương tác với lịch sử phiên của trình duyệt, cho phép bạn thao tác với ngăn xếp lịch sử của trình duyệt (ví dụ: pushState, replaceState).

Ví dụ về mã:

history.pushState({ page: 1 }, 'title', '/page1');
history.replaceState({ page: 2 }, 'title', '/page2');

7. API Clipboard

Clipboard API cho phép bạn đọc và ghi vào clipboard, cho phép các tính năng như chức năng sao chép-dán.

Ví dụ về mã:

navigator.clipboard.writeText('Hello, Clipboard!').then(() => { console.log('Text copied to clipboard');
}).catch(err => { console.error('Failed to copy text:', err);
});

8. API Toàn màn hình

Fullscreen API cho phép bạn hiển thị một phần tử cụ thể hoặc toàn bộ trang web ở chế độ toàn màn hình, hữu ích cho video hoặc trải nghiệm nhập vai như trò chơi.

Ví dụ về mã:

document.getElementById('myElement').requestFullscreen().catch(err => { console.error(`Error attempting to enable full-screen mode: ${err.message}`);
});

9. API FormData

FormData API đơn giản hóa quy trình xây dựng các cặp khóa/giá trị đại diện cho các trường biểu mẫu và giá trị của chúng để gửi dữ liệu biểu mẫu dễ dàng hơn thông qua XHR hoặc Fetch.

Ví dụ về mã:

const form = document.querySelector('form');
const formData = new FormData(form);
fetch('/submit', { method: 'POST', body: formData
}).then(response => { if (response.ok) { console.log('Form submitted successfully!'); }
});

10. API Fetch

Fetch API cung cấp một cách hiện đại và linh hoạt để thực hiện các yêu cầu mạng không đồng bộ, cung cấp một giải pháp thay thế đơn giản hơn, dựa trên lời hứa cho XMLHttpRequest.

Ví dụ về mã:

fetch('https://api.example.com/data') .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.error('Error fetching data:', error));

11. API Kéo và Thả

Drag and Drop API cho phép bạn triển khai chức năng kéo và thả trong các ứng dụng web của mình, nâng cao tương tác của người dùng với các phần tử UI trực quan.

Ví dụ về mã:

const item = document.getElementById('item');
item.addEventListener('dragstart', (e) => { e.dataTransfer.setData('text/plain', item.id);
});

12. API Định vị địa lý

Geolocation API cung cấp quyền truy cập vào thông tin vị trí địa lý từ thiết bị của người dùng, cho phép các dịch vụ và tính năng dựa trên vị trí.

Ví dụ về mã:

navigator.geolocation.getCurrentPosition((position) => { console.log(`Latitude: ${position.coords.latitude}, Longitude: ${position.coords.longitude}`);
}, (error) => { console.error(`Error getting location: ${error.message}`);
});

Kết luận

Những Web API này mở ra một thế giới khả năng cho việc tạo ra các ứng dụng web có tính tương tác cao và thân thiện với người dùng. Từ lưu trữ và thanh toán đến định vị địa lý và đồ họa, việc thành thạo những API này có thể nâng cao kỹ năng phát triển web của bạn lên một tầm cao mới. Bằng cách hiểu cách triển khai hiệu quả những API này trong các dự án của bạn, bạn có thể nâng cao đáng kể cả chức năng và trải nghiệm người dùng.

Cảm ơn các bạn đã theo dõi.

Bình luận

Bài viết tương tự

- vừa được xem lúc

The Twelve-Factor App, cẩm nang gối đầu giường trong xây dựng application (Phần 1)

Giới thiệu. Ngày nay các phần mềm được triển khai dưới dạng các dịch vụ, chúng được gọi là các web apps hay software-as-a-service (SaaS).

0 0 29

- vừa được xem lúc

8 Sai lầm phổ biến khi lập trình Android

1. Hard code.

0 0 185

- vừa được xem lúc

Popular interview question: What is the difference between Process and Thread? 10 seconds a day

Video được đăng tại channel Tips Javascript

0 0 28

- vừa được xem lúc

Thuật toán và ứng dụng - P1

Mục đích series. . Những bài toán gắn liền với thực tế. Từ đó thấy được tầm quan trọng của thuật toán trong lập trình.

0 0 35

- vừa được xem lúc

Tác dụng của Docker trong quá trình học tập

Docker bây giờ gần như là kiến thức bắt buộc đối với các anh em Dev và Devops, nhưng mà đối với sinh viên IT nói chung vẫn còn khá mơ hồ và không biết tác dụng thực tế của nó. Hôm nay mình sẽ chia sẻ

0 0 30

- vừa được xem lúc

Làm giàu trong ngành IT

Hầu như mọi người đều đi làm để kiếm tiền, ít người đi làm vì thấy cái nghề đó thú vị lắm. Bây giờ vất cho mình 100 tỷ bảo mình bỏ nghề thì mình cũng bỏ thôi.

0 0 32