API là viết tắt của Application Programming Interface – phương thức trung gian kết nối các ứng dụng và thư viện khác nhau.

Bạn đang xem: Rest api là gì

Sử dụng API giúp developer đẩy nhanh quá trình phát triển phần mềm, tạo ra sự nhanh chóng, thuận tiện để hướng đến mục tiêu cuối là nâng cao hiệu suất công việc.

Đọc bài viết của ITviec để tìm hiểu xem:

API là gì? Web API là gì? 4 đặc điểm nổi bật của API là gì?Ưu, nhược điểm của API và các ứng dụng của APILàm thế nào để đảm bảo tính bảo mật cho APINhững API miễn phí cho developer thực hành

API là gì?

API là viết tắt của Application Programming Interface – phương thức trung gian kết nối các ứng dụng và thư viện khác nhau.

Nó cung cấp khả năng truy xuất đến một tập các hàm hay dùng, từ đó có thể trao đổi dữ liệu giữa các ứng dụng.

Thi thoảng vẫn có người lầm tưởng API là một ngôn ngữ lập trình nhưng thực ra, API chỉ là các hàm hay thủ tục thông thường. Các hàm này được viết trên nhiều ngôn ngữ lập trình khác nhau.

Để hiểu rõ hơn API là gì, hãy tưởng tượng bạn đang ngồi trong một nhà hàng, trước mặt bạn là menu để gọi thức ăn. Nhà bếp là một phần của “hệ thống”, nơi sẽ chuẩn bị những món ăn mà bạn gọi. Tuy nhiên, làm thế nào để nhà bếp biết được bạn muốn ăn món nào? Và làm sao để họ phân phối thức ăn đến bàn của bạn? Đây là lúc cần đến sự xuất hiện của người phục vụ, đóng vai trò như API.

Người phục vụ (hay API) sẽ nhận yêu cầu từ bạn và truyền đạt với nhà bếp (hệ thống) những thứ cần làm. Sau đó người phục vụ sẽ phản hồi ngược lại cho bạn, trong trường hợp này, họ sẽ mang thức ăn sau khi nhà bếp hoàn thành đến tận bàn cho bạn.

4 đặc điểm nổi bật của API

API sử dụng mã nguồn mở, dùng được với mọi client hỗ trợ XML, JSON.API có khả năng đáp ứng đầy đủ các thành phần HTTP: URI, request/response headers, caching, versioning, content forma…. Bạn có thể sử dụng các host nằm trong phần ứng dụng hoặc trên IIS.Mô hình web API dùng để hỗ trợ MVC như: unit test, injection, ioc container, model binder, action result, filter, routing, controller. Ngoài ra, nó cũng hỗ trợ RESTful đầy đủ các phương thức như: GET, POST, PUT, DELETE các dữ liệu.Được đánh giá là một trong những kiểu kiến trúc hỗ trợ tốt nhất với các thiết bị có lượng băng thông bị giới hạn như smartphone, tablet…

Ưu và nhược điểm của API

Ưu điểm

Giao tiếp hai chiều phải được xác nhận trong các giao dịch sử dụng API. Cũng chính vì vậy mà các thông tin rất đáng tin cậy.API là công cụ mã nguồn mở, có thể kết nối mọi lúc nhờ vào Internet.Hỗ trợ chức năng RESTful một cách đầy đủ.Cấu hình đơn giản khi được so sánh với WCF (Window Communication Foundation). Cung cấp cấp trải nghiệm thân thiện với người dùng.

Nhược điểm

Tốn nhiều chi phí phát triển, vận hành, chỉnh sửa.Đòi hỏi kiến thức chuyên sâu.Có thể gặp vấn đề bảo mật khi bị tấn công hệ thống.

Mình sử dụng API trong hầu hết những dự án web application và mobile application. Mục đích là để kết nối thư viện, dữ liệu giữa những nền tảng khác nhau. Tuy nhiên, tính bảo mật của API còn kém, khiến mình đau cả đầu (cười). – Ngọc Thái chia sẻ

*

Ứng dụng của API

API của thư viện phần mềm (framework): API mô tả và quy định các hành động mong muốn mà các thư viện cung cấp. Một API có thể có nhiều cách triển khai khác nhau, giúp cho một chương trình viết bằng ngôn ngữ này có thể sử dụng được thư viện viết bằng ngôn ngữ khác.

Xem thêm: Công Chức Là Gì – Những điều Cần Biết Về Công Chức

Làm sao để đảm bảo tính bảo mật cho API?

2 vấn đề phổ biến nhất liên quan đến bảo mật API

1. SQL Injection

Injection hay SQL Injection là một lỗi khá phổ biến. Những kẻ tấn công lợi dụng lỗ hổng của việc kiểm tra dữ liệu đầu vào trong các ứng dụng web đến hệ thống quản lý cơ sở dữ liệu (DBMS) để khai thác các thông tin nhạy cảm.

Hướng khắc phục: Ràng buộc thật kỹ dữ liệu người dùng nhập vào. Có thể dùng Regular Expression để loại bỏ đi các ký tự lạ hoặc các ký tự không phải là số hoặc dùng các hàm có sẵn để giảm thiểu lỗi.

2. Spam request

Những request để chế độ công khai rất dễ bị spam.

Ví dụ: chỉ cần hoàn thành username và password để đăng ký tài khoản (dù sau đó có yêu cầu xác thực tài khoản hay không).

Những người thích “nghịch” sẽ viết một đoạn script gửi request liên tiếp cho server. Server sẽ phải xử lý hết các request này và tiến hành đăng ký liên tục.

Hướng khắc phục: Hãy khiến cho những request này trở nên phức tạp hơn. Chẳng hạn: thêm câu hỏi bảo mật, yêu cầu người dùng chờ trong giây lát để thực hiện các thao tác tiếp theo…

Một số phương án ngăn rò rỉ lỗ hổng thông tin trong API

Kiểm tra thẩm quyền người sử dụng và xác thực ứng dụng: Ngoài xác thực người sử dụng cuối, bạn cần phải xác thực ứng dụng. Ví dụ nếu bạn đang sử dụng ứng dụng AirBnB hoặc Uber, những ứng dụng này sẽ gọi các API của chúng và vì vậy ứng dụng được xác thực.Mã hóa dữ liệu được truyền đi: Sử dụng chứng chỉ SSL (Secure Sockets Layer) để mã hóa các dữ liệu quan trọng.Chữ ký số: Các chữ ký số là các chuỗi ký tự duy nhất tượng trưng cho một người sử dụng. Bạn lưu trữ các chuỗi này trong cơ sở dữ liệu và chỉ cung cấp nếu người sử dụng nhập đúng tên và mật khẩu.

Xem thêm: Tải Game Clans – Tải Về Apk Clash Of Clans Android 13

Tránh các mật khẩu cố định hoặc nhúng: Đừng vì lười biếng muốn rút gọn thao tác mà sử dụng mật khẩu đơn giản hoặc lấy thông tin ID và mật khẩu được lưu cục bộ trên một ứng dụng di động.

Những API miễn phí dành cho developer

Chuyên mục: Hỏi Đáp