• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

NĂM ĐIỀU CẦN TRÁNH TRONG HTTP API’S

Thảo luận về các vấn đề Công Nghệ Thông Tin chung: tin tức, công nghệ mới...

Moderator: Điều hành

lethienanh
Posts: 3
Joined: Mon 16/03/2020 5:56 pm

NĂM ĐIỀU CẦN TRÁNH TRONG HTTP API’S

Postby lethienanh » Tue 17/03/2020 1:46 pm

Trong HTTP chúng ta có 4 method cơ bản bao gồm POST, GET, PUT, DELETE. Mỗi method tương ứng với một module của API là tạo, đọc, sửa và xoá. Nhưng khi sử dụng HTTP API’s sẽ có những điều bạn cần lưu ý. Hãy cùng chúng tôi tìm hiểu 5 điều cần tránh về HTTP API’s trong bài viết dưới đây.

Image


1. REST không phải phương án duy nhất

RESTful API là một tiêu chuẩn dùng trong việc thiết kế API cho các ứng dụng web (thiết kế Web services) để tiện cho việc quản lý các resource. Nó chú trọng vào tài nguyên hệ thống (tệp văn bản, ảnh, âm thanh, video, hoặc dữ liệu động…), bao gồm các trạng thái tài nguyên được định dạng và được truyền tải qua HTTP.

REST ​​là một cách tốt để xây dựng API nhưng không có nghĩa là cách duy nhất. Một số người có vấn đề với REST và đó là lý do tại sao các lựa chọn thay thế như GraphQl cũng tồn tại.

2. Động từ trong tên tài nguyên

Tài nguyên HTTP được cho là đặc biệt để đại diện cho một thực thể trong thế giới thực như người dùng, thẻ tín dụng, xe hơi hoặc nhà hàng. Chúng được coi là danh từ. Đây không phải là một quyết định tùy tiện của một số nhà phát triển trước đây, mà là một lựa chọn thiết kế được xem xét tốt nhất. Một điều tồi tệ là bạn đặt tên các tài nguyên với một động từ. Nó thực sự chưa phù hợp quy ước về tài nguyên so với động từ HTTP (GET, POST, PUT, v.v.) vì tạo ra sự nhầm lẫn. Bởi vậy, bạn cần lưu ý khi đặt trên trong HTTP API’s.

Image


3. Tạo hoặc cập nhật dữ liệu với GET

Yêu cầu GET có một quy ước được thiết lập:

Cụ thể, quy ước đã được thiết lập rằng các phương thức GET và HEAD không nên có ý nghĩa của việc thực hiện một hành động nào khác ngoài truy xuất.

Nếu bạn muốn sử dụng ngôn ngữ của web (HTTP) trong lập trình thì tốt hơn hết nên tuân thủ nó.

4. Không thống nhất nội bộ

Vấn đề thứ 4 cần tránh trong HTTP API’s là sự thống nhất về nội dung sử dụng khi viết mã. Có lẽ điều tồi tệ nhất trong tất cả là một API không nhất quán trong chính nó. Ví dụ: trong đó việc tìm nạp một người dùng nhất định được thực hiện chỉ với các đường dẫn như / user / {id} nhưng việc tìm nạp địa chỉ có được lại sử dụng bằng các tham số truy vấn như / address ? id = {id}. Rõ ràng sự không nhất quán trong lập trình HTTP sẽ gây những khó khăn nhất định.

5. Hành vi cập nhật thay đổi dữ liệu

Điều này thường thấy nhất trong các lệnh gọi API không phải là idempotent nhưng cũng có thể xuất hiện theo những cách thức khác.

Image


Ví dụ về hành vi cập nhật dữ liệu: Khi cập nhật người dùng, các hồ sơ của người đó cũng sẽ được cập nhật theo vì dữ liệu cùng được nhận từ một API. Nhưng nó có thể có vấn đề nếu cập nhật người dùng cũng cập nhật một phần dữ liệu khác có vẻ không liên quan. Ví dụ: Nếu địa chỉ của người dùng thay đổi, thì địa chỉ của các ngôi nhà mà họ sở hữu có được cập nhật không? Hoặc nếu địa chỉ người dùng được cập nhật địa chỉ và thông tin cũng cập nhật địa chỉ trên thẻ tín dụng thì sao? Điều này không hợp lý nếu bạn không có một tài liệu chắc chắn.

Để là một lập trình viên ngôn ngữ HTTP giỏi, bạn cần nắm bắt và cập nhật các thông tin liên quan. Chúng tôi tin rằng với 5 điều cần tránh trong HTTP API’s bạn sẽ sử dụng ngôn ngữ lập trình này tốt hơn.

[Nguồn tổng hợp]
------
Xem thêm nhiều bài viết khác tại đây: https://www.jt1.vn/blog
Hàng trăm công việc IT hấp dẫn: https://www.jt1.vn/top-it-jobs
Liên hệ với chúng tôi qua: https://www.jt1.vn/contact-jt1



Return to “Các vấn đề CNTT khác”

Who is online

Users browsing this forum: No registered users and 3 guests