15 câu hỏi và câu trả lời phỏng vấn API REST cho năm 2025
Câu hỏi và câu trả lời phỏng vấn API Rest dành cho người mới
1) Giải thích REST và RESTFUL là gì?
REST đại diện cho Chuyển giao trạng thái đại diện; đây là một khía cạnh tương đối mới của việc viết API web.
RESTFUL được gọi là các dịch vụ web được viết bằng cách áp dụng khái niệm kiến trúc REST được gọi là dịch vụ RESTful, tập trung vào tài nguyên hệ thống và cách trạng thái của tài nguyên nên được truyền qua giao thức HTTP đến các máy khách khác nhau được viết bằng ngôn ngữ khác nhau. Trong dịch vụ web RESTFUL, các phương thức HTTP như GET, POST, PUT và DELETE có thể được sử dụng để thực hiện các hoạt động CRUD.
👉 Tải xuống bản PDF miễn phí: Câu hỏi và câu trả lời phỏng vấn Rest API >>
2) Giải thích phong cách kiến trúc để tạo API web?
Phong cách kiến trúc để tạo ra api web là
- HTTP để liên lạc với máy chủ của khách hàng
- XML/JSON làm ngôn ngữ định dạng
- URI đơn giản làm địa chỉ cho các dịch vụ
- Giao tiếp không quốc tịch
3) Đề cập đến những công cụ cần thiết để kiểm tra API web của bạn?
Công cụ SOAPUI cho SOAP WS và Firefox plugin “áp phích” cho Dịch vụ RESTFUL.
4) Hãy nêu các phương thức HTTP được REST hỗ trợ là gì?
Các phương thức HTTP được REST hỗ trợ là:
- ĐƯỢC: Nó yêu cầu một tài nguyên tại URL yêu cầu. Nó không được chứa nội dung yêu cầu vì nó sẽ bị loại bỏ. Có lẽ nó có thể được lưu trữ cục bộ hoặc trên máy chủ.
- BÀI ĐĂNG: Nó gửi thông tin đến dịch vụ để xử lý; nó thường trả về tài nguyên đã sửa đổi hoặc tài nguyên mới
- ĐẶT: Tại URL yêu cầu, nó cập nhật tài nguyên
- XÓA BỎ: Tại URL yêu cầu, nó sẽ xóa tài nguyên
- TÙY CHỌN: Nó chỉ ra những kỹ thuật nào được hỗ trợ
- CÁI ĐẦU: Về URL yêu cầu, nó trả về thông tin meta
Chúng ta hãy nhìn từ góc độ của một bản ghi duy nhất. Giả sử có một bản ghi nhân viên với mã số nhân viên là 1.
Các hành động sau đây sẽ có ý nghĩa tương ứng.
- POST– Điều này sẽ không áp dụng được vì chúng tôi đang tìm nạp dữ liệu của nhân viên 1 đã được tạo.
- GET– Điều này sẽ được sử dụng để lấy thông tin chi tiết của nhân viên có Mã nhân viên là 1 bằng cách sử dụng dịch vụ web RESTful
- PUT– Điều này sẽ được sử dụng để cập nhật thông tin chi tiết của nhân viên có số Nhân viên là 1 bằng cách sử dụng dịch vụ web RESTful
- DELETE – Dùng để xóa thông tin chi tiết của nhân viên có Mã nhân viên là 1
5) Đề cập đến việc bạn có thể sử dụng yêu cầu GET thay vì PUT để tạo tài nguyên không?
Không, bạn không được phép sử dụng PUT cho GET. Hoạt động GET chỉ có quyền xem, trong khi tài nguyên PUT được sử dụng để cập nhật dữ liệu.
6) Hãy nêu những tài nguyên trong kiến trúc REST?
Tài nguyên được xác định bằng URL logic; nó là yếu tố chính của thiết kế RESTful. Không giống như các dịch vụ web SOAP trong REST, bạn xem dữ liệu sản phẩm dưới dạng tài nguyên và tài nguyên này phải chứa tất cả thông tin cần thiết.
Câu hỏi và câu trả lời phỏng vấn Rest API dành cho người có kinh nghiệm
7) Hãy nêu sự khác biệt giữa AJAX và REST?
AJAX | REST của |
---|---|
Trong Ajax, yêu cầu được gửi đến máy chủ bằng cách sử dụng các đối tượng XMLHttpRequest. Phản hồi được sử dụng bởi JavaMã lệnh để thay đổi trang hiện tại một cách linh hoạt. | REST có cấu trúc URL và mẫu yêu cầu/phản hồi xoay quanh việc sử dụng tài nguyên. |
Ajax là một tập hợp công nghệ; đó là một kỹ thuật cập nhật động các phần của giao diện người dùng mà không cần phải tải lại trang. | REST là một loại kiến trúc phần mềm và là phương pháp cho phép người dùng yêu cầu dữ liệu hoặc thông tin từ máy chủ. |
Ajax loại bỏ sự tương tác không đồng bộ giữa khách hàng và máy chủ. | REST yêu cầu sự tương tác giữa khách hàng và máy chủ. |
8) Hãy nêu một số đặc điểm chính của REST?
Một số đặc điểm chính của REST bao gồm
- REST không có trạng thái, do đó MÁY CHỦ không có trạng thái (hoặc dữ liệu phiên)
- Với API REST được áp dụng tốt, máy chủ có thể được khởi động lại giữa hai cuộc gọi khi mọi dữ liệu được chuyển đến máy chủ
- Dịch vụ web chủ yếu sử dụng phương thức POST để thực hiện các thao tác, trong khi REST sử dụng GET để truy cập tài nguyên
9) Đề cập đến các phong cách tích hợp ứng dụng khác nhau là gì?
Các phong cách tích hợp khác nhau bao gồm
- Cơ sở dữ liệu được chia sẻ
- Chuyển tập tin hàng loạt
- Gọi thủ tục từ xa (RPC)
- Trao đổi các thông điệp không đồng bộ qua phần mềm trung gian hướng thông điệp (MOM)
10) Giải thích JAXB liên quan đến API web RESTful như thế nào?
JAXB là viết tắt của java Arch để liên kết XML.
11) Hãy cho biết sự khác biệt giữa PUT và POST là gì?
“PUT” đặt một tệp hoặc tài nguyên tại một URI cụ thể và chính xác tại URI đó. Nếu đã có tệp hoặc tài nguyên tại URI đó, PUT sẽ thay đổi tệp hoặc tài nguyên đó. Nếu không có tài nguyên hoặc tệp ở đó, PUT sẽ tạo một tài nguyên hoặc tệp
POST gửi dữ liệu đến một URI cụ thể và mong muốn tài nguyên tại URI đó xử lý yêu cầu. Máy chủ web tại thời điểm này có thể quyết định phải làm gì với dữ liệu trong bối cảnh tài nguyên được chỉ định
PUT có nghĩa là bình thường, gọi nó bao nhiêu lần cũng không ảnh hưởng đến tài nguyên.
Tuy nhiên, POST không bình thường, nghĩa là nếu bạn gọi POST nhiều lần thì nó sẽ tiếp tục tạo ra nhiều tài nguyên hơn
12) Đề cập đến ngôn ngữ đánh dấu nào có thể được sử dụng trong api web yên tĩnh?
JSON và XML là hai ngôn ngữ đánh dấu có thể được sử dụng trong api web an toàn
13) Hãy nêu sự khác biệt giữa các dịch vụ web kiểu RPC hoặc kiểu tài liệu? Làm thế nào bạn xác định nên chọn cái nào?
Trong các dịch vụ web kiểu tài liệu, chúng tôi có thể truyền tải thông báo XML như một phần của yêu cầu SOAP, điều này không thể thực hiện được trong dịch vụ web kiểu RPC. Dịch vụ web kiểu tài liệu thích hợp nhất trong một số ứng dụng trong đó thông báo XML hoạt động như tài liệu và nội dung của tài liệu đó có thể thay đổi và mục đích của dịch vụ web không phụ thuộc vào nội dung của thông báo XML.
14) Hãy nêu JAX-WS và JAX-RS là gì?
Cả JAX-WS và JAX-RS đều là các thư viện (API) để thực hiện giao tiếp theo nhiều cách khác nhau trong Java. JAX-WS là một thư viện có thể được sử dụng để thực hiện giao tiếp SOAP trong JAVA và JAX-RS cho phép bạn thực hiện giao tiếp REST trong JAVA.
15) Liệt kê các công cụ hoặc API để phát triển hoặc thử nghiệm api web?
Các công cụ kiểm tra dịch vụ web dành cho API REST bao gồm
- Dịch vụ web Spring REST sử dụng MVC
- API Jersey
- CXF
- Trục
- nghỉ ngơi,
16) Hãy nêu sự khác biệt giữa SOAP và REST?
XÀ BÔNG TẮM | REST của |
---|---|
SOAP là một giao thức qua đó hai máy tính giao tiếp bằng cách chia sẻ tài liệu XML. | Rest là một kiến trúc dịch vụ và thiết kế cho các kiến trúc phần mềm dựa trên mạng. |
SOAP chỉ cho phép XML | REST hỗ trợ nhiều định dạng dữ liệu khác nhau |
Không thể lưu trữ các lần đọc dựa trên SOAP | Các lần đọc REST có thể được lưu vào bộ đệm |
SOAP giống như ứng dụng máy tính để bàn tùy chỉnh, được kết nối chặt chẽ với máy chủ | Máy khách REST giống một trình duyệt hơn; nó biết cách tiêu chuẩn hóa các phương pháp và một ứng dụng phải phù hợp với nó |
SOAP chậm hơn REST | REST nhanh hơn SOAP |
Nó chạy trên HTTP nhưng bao bọc tin nhắn | Nó sử dụng các tiêu đề HTTP để chứa thông tin meta |
Những câu hỏi phỏng vấn này cũng sẽ giúp ích cho bài thi viva(orals) của bạn