Chủ đề của Tích hợp ứng dụng trang đơn với Spring Boot - Integrate single page application with Spring Boot

SBA301 - Chương 1: Kiến trúc SPA và tích hợp với Spring Boot

Tổng quan ứng dụng trang đơn (Single Page Application) và cách nó ghép với backend Spring Boot: vì sao SPA chuyển trang nhanh hơn sau lần tải đầu, đánh đổi ở lần tải đầu tiên, cách SPA giảm tải cho máy chủ nhờ đẩy việc định tuyến và dựng giao diện xuống trình duyệt. Kèm những điểm phải tự xử lý mà trang truyền thống được sẵn: lịch sử duyệt web, công cụ phân tích như Google Analytics, và rủi ro bảo mật XSS do xử lý nặng phía client. Kiến trúc này cũng làm rõ phần việc mà HTTP đảm nhận và phần việc còn lại thuộc về máy chủ backend.

Xem danh sách câu hỏi13 câu hỏi100% có giải thích

Bắt đầu bằng Chế độ học nếu bạn muốn đáp án và giải thích hiện ngay sau mỗi câu — không bấm giờ, dừng lúc nào cũng được. Chọn Thi thử khi muốn biết mình đang ở đâu: có bấm giờ, chấm điểm ở cuối, và giải thích chỉ mở sau khi nộp.

Học ngân hàng câu hỏi của chủ đề

Luyện tập theo chủ đề này

13Câu hỏi hiện có

Câu hỏi của chủ đề

13/13 câuHết danh sách
ATo render the React components.
BTo store and process data, and handle API requests.
CTo define client-side routing.
DTo manage local component state.
Lời giải
Trong một ứng dụng React điển hình, vai trò chính của một máy chủ backend là xử lý và lưu trữ dữ liệu, cũng như quản lý các yêu cầu API. Máy chủ backend thường được sử dụng để lưu trữ và xử lý dữ liệu lớn, chẳng hạn như cơ sở dữ liệu, và để xử lý các yêu cầu API từ máy khách. Điều này giúp phân tách logic kinh doanh và logic giao diện người dùng, làm cho ứng dụng dễ dàng bảo trì và mở rộng hơn. Máy chủ backend cũng có thể được sử dụng để thực hiện các tác vụ phức tạp, chẳng hạn như tính toán và phân tích dữ liệu.
Mở trang câu hỏi này →
2What is the primary purpose of HTTP?4 lựa chọnDễ
ATo define CSS styles.
BTo transfer data over the internet, especially between web browsers and servers.
CTo manage database connections.
DTo handle client-side rendering exclusively.
Lời giải
HTTP (Hypertext Transfer Protocol) là một giao thức được sử dụng để truyền tải dữ liệu qua internet, đặc biệt là giữa trình duyệt web và máy chủ. Mục đích chính của HTTP là cung cấp một cách thức để các ứng dụng web giao tiếp với nhau, cho phép truyền tải dữ liệu như văn bản, hình ảnh, âm thanh và các loại dữ liệu khác. HTTP sử dụng các phương thức như GET, POST, PUT và DELETE để thực hiện các hành động như đọc, tạo, cập nhật và xóa dữ liệu. Ngoài ra, HTTP cũng cung cấp các tiêu chuẩn về giao tiếp và truyền tải dữ liệu, giúp đảm bảo rằng dữ liệu được truyền tải một cách an toàn và chính xác.
Mở trang câu hỏi này →
ATo handle server-side logic and database interactions.
BTo create the user interface and handle client-side interactions.
CTo manage application security.
DTo define REST API endpoints.
Lời giải
Trong kiến trúc ứng dụng Spring Boot + React SPA, vai trò chính của ReactJS là tạo ra giao diện người dùng và xử lý các tương tác trên client-side. ReactJS là một thư viện JavaScript được sử dụng để xây dựng các ứng dụng web đơn hướng (Single Page Application - SPA) bằng cách tạo ra các thành phần UI động và tương tác. Nó giúp tạo ra các ứng dụng web nhanh chóng và hiệu quả, đồng thời cung cấp cho người dùng trải nghiệm sử dụng tốt hơn. Trong khi đó, Spring Boot sẽ xử lý các logic server-side và tương tác với cơ sở dữ liệu.
Mở trang câu hỏi này →
4How do SPAs affect analytics and tracking tools like Google Analytics?4 lựa chọnKhó33% trả lời đúng
AAnalytics tools natively support SPAs without setup
BThey simplify tracking because everything is on one page
CSPAs automatically log page views
DThey require manual tracking for route changes
Lời giải
Các ứng dụng một trang (SPAs) có thể ảnh hưởng đến công cụ phân tích và theo dõi như Google Analytics. Khi sử dụng SPAs, người dùng không phải chuyển trang mà thay vào đó, nội dung sẽ được tải về và hiển thị trên cùng một trang. Điều này có thể gây khó khăn cho công cụ phân tích vì chúng không thể tự động theo dõi các trang khác nhau mà người dùng đã truy cập. Thay vào đó, người dùng phải thực hiện theo dõi thủ công cho các thay đổi đường dẫn. Điều này có nghĩa là người dùng phải tự động hóa việc theo dõi và phân tích dữ liệu để có được thông tin chính xác về hành vi người dùng.
Mở trang câu hỏi này →
AThey offer faster transitions between pages after the first load
BThey require no JavaScript
CThey offer faster initial page loads
DThey reduce server-side processing for all requests
Lời giải
Ở các ứng dụng một trang (Single Page Applications - SPAs), người dùng không cần phải tải lại toàn bộ trang khi chuyển đổi giữa các trang khác nhau. Điều này giúp giảm thiểu thời gian tải trang và cải thiện trải nghiệm người dùng. Sau khi tải trang lần đầu tiên, các trang khác sẽ được tải nhanh chóng và mượt mà, không cần phải chờ đợi quá lâu. Điều này là nhờ vào việc sử dụng JavaScript để tải và cập nhật nội dung trang mà không cần phải tải lại toàn bộ trang.
Mở trang câu hỏi này →
6Which of the following best explains why SPAs provide a better user experience?4 lựa chọnTrung bình40% trả lời đúng
AThey enable seamless navigation without full reloads
BThey are always faster than any server-rendered app
CThey use server-side rendering for every page
DThey refresh the entire browser page on each request
Lời giải
SPAs (Single-Page Applications) cung cấp trải nghiệm người dùng tốt hơn vì chúng cho phép người dùng di chuyển qua các trang web mà không cần tải lại toàn bộ trang. Điều này được thực hiện thông qua việc sử dụng JavaScript để tải nội dung mới vào trang web mà không cần phải tải lại toàn bộ trang. Điều này giúp cải thiện tốc độ và hiệu suất của trang web, đồng thời cũng giúp người dùng có trải nghiệm mượt mà hơn. Ngoài ra, SPAs cũng cho phép người dùng tương tác với trang web mà không cần phải chờ đợi trang web tải lại. Điều này giúp người dùng có thể tương tác với trang web một cách nhanh chóng và dễ dàng hơn.
Mở trang câu hỏi này →
AServer misconfiguration
BSSL certificate expiration
CDatabase injection
DCross-Site Scripting (XSS)
Lời giải
Các ứng dụng một trang (SPAs) thường thực hiện nhiều xử lý trên phía client, điều này làm tăng nguy cơ tấn công Cross-Site Scripting (XSS). XSS là một loại tấn công web mà kẻ tấn công có thể thực hiện mã độc trên trang web của nạn nhân, khiến nạn nhân thực hiện các hành động không mong muốn. Các ứng dụng một trang thường sử dụng JavaScript để thực hiện các hành động trên phía client, và nếu mã JavaScript bị tấn công, kẻ tấn công có thể thực hiện các hành động độc hại như sao chép dữ liệu, thực hiện các giao dịch không mong muốn, v.v. Vì vậy, các nhà phát triển cần phải chú ý đến việc bảo mật mã JavaScript của mình để tránh các tấn công XSS.
Mở trang câu hỏi này →
AThey provide better back/forward navigation than traditional sites
BThey cannot support routing
CThey use standard browser navigation without modification
DManual configuration is needed to manage browser history correctly
Lời giải
Các ứng dụng đơn trang (SPAs) có một nhược điểm quan trọng liên quan đến lịch sử và điều hướng của trình duyệt. Khi bạn sử dụng một SPA, trình duyệt không thể lưu lại lịch sử trang web như một trang web truyền thống. Điều này có nghĩa là nếu bạn muốn quay lại trang trước đó, bạn không thể sử dụng tính năng quay lại (back) của trình duyệt. Thay vào đó, bạn phải sử dụng các tính năng riêng của ứng dụng để điều hướng. Một nhược điểm khác là bạn cần cấu hình thủ công để quản lý lịch sử trình duyệt một cách chính xác. Điều này có thể gây khó khăn cho người dùng khi họ muốn quay lại trang trước đó.
Mở trang câu hỏi này →
9Why are SPAs considered ideal for building responsive web applications?4 lựa chọnDễ100% trả lời đúng
AThey automatically convert to mobile apps
BThey provide dynamic and fast content updates
CThey completely avoid CSS
DThey can only be accessed on mobile devices
Lời giải
Các ứng dụng một trang (SPAs) được coi là lý tưởng để xây dựng các ứng dụng web phản hồi vì chúng cung cấp nội dung cập nhật nhanh chóng và động. Điều này đạt được thông qua việc sử dụng JavaScript để tải dữ liệu từ máy chủ và cập nhật nội dung trên trang web mà không cần tải lại trang. Điều này giúp cải thiện trải nghiệm người dùng và tăng tốc độ tải trang. Ngoài ra, các ứng dụng một trang thường được xây dựng trên cơ sở dữ liệu và có thể được truy cập từ bất kỳ thiết bị nào có kết nối internet, bao gồm cả máy tính để bàn và thiết bị di động. Điều này giúp tạo ra một ứng dụng web phản hồi linh hoạt và dễ sử dụng.
Mở trang câu hỏi này →
10How do SPAs typically reduce server load?4 lựa chọnTrung bình60% trả lời đúng
ABy disabling server-side APIs
BBy caching everything on the server
CBy offloading routing and rendering to the client
DBy avoiding use of databases
Lời giải
Các ứng dụng một trang (SPAs) thường giảm tải cho máy chủ bằng cách chuyển giao các chức năng định tuyến và hiển thị sang máy khách. Điều này có nghĩa là máy khách sẽ xử lý các yêu cầu của người dùng và không cần phải gửi yêu cầu đến máy chủ. Điều này giúp giảm tải cho máy chủ và cải thiện hiệu suất của ứng dụng. Ngoài ra, các SPAs cũng thường sử dụng các kỹ thuật như lưu trữ dữ liệu trong bộ nhớ đệm của máy khách để giảm thiểu số lần truy cập máy chủ. Điều này giúp giảm tải cho máy chủ và cải thiện hiệu suất của ứng dụng.
Mở trang câu hỏi này →
ADisabling security in React.
BConfiguring CORS in Spring Boot.
CUsing server-side rendering exclusively.
DUsing iframes to embed the Spring Boot application.
Lời giải
Để xử lý các yêu cầu có nguồn gốc khác nhau (CORS) giữa React và Spring Boot, có một số cách tiếp cận phổ biến. Một trong số đó là cấu hình CORS trong Spring Boot. Điều này cho phép Spring Boot xác định các nguồn gốc được phép thực hiện các yêu cầu đến ứng dụng của nó, giúp ngăn chặn các yêu cầu không mong muốn. Điều này được thực hiện thông qua việc thêm các tiêu đề HTTP đặc biệt vào các phản hồi của ứng dụng, chẳng hạn như Access-Control-Allow-Origin. Bằng cách cấu hình CORS trong Spring Boot, bạn có thể kiểm soát các yêu cầu có nguồn gốc khác nhau đến ứng dụng của mình và đảm bảo rằng chúng được xử lý một cách an toàn và hiệu quả.
Mở trang câu hỏi này →
AMulti-threading
BBlocking I/O
CEvent-driven, non-blocking I/O
DRelational databases
Lời giải
Node.js là một nền tảng phát triển ứng dụng dựa trên JavaScript, và một trong những tính năng quan trọng giúp nó xử lý hiệu quả các yêu cầu đồng thời là cơ chế I/O không chặn (non-blocking I/O). Điều này cho phép Node.js xử lý nhiều yêu cầu đồng thời mà không cần tạo ra nhiều luồng (thread) như các ngôn ngữ lập trình khác. Thay vào đó, Node.js sử dụng một cơ chế sự kiện (event-driven) để quản lý các yêu cầu và xử lý chúng một cách hiệu quả. Khi một yêu cầu được gửi đến, Node.js sẽ thêm nó vào một danh sách các sự kiện cần được xử lý, và sau đó xử lý các sự kiện khác trong khi chờ đợi kết quả của yêu cầu đó. Điều này giúp Node.js xử lý nhiều yêu cầu đồng thời mà không cần tốn nhiều tài nguyên hệ thống.
Mở trang câu hỏi này →
13Which command is used to create a new branch called "feature-login"?4 lựa chọnDễ71% trả lời đúng
Agit branch create feature-login
Bgit new branch feature-login
Cgit branch feature-login
Dgit checkout feature-login
Lời giải
Để tạo một nhánh mới trong Git, bạn cần sử dụng lệnh 'git branch'. Lệnh này được sử dụng để tạo một nhánh mới từ một điểm cụ thể trong lịch sử commit của dự án. Trong câu hỏi này, bạn cần tạo một nhánh mới có tên là 'feature-login'. Lệnh đúng để tạo nhánh mới là 'git branch feature-login'. Lệnh này sẽ tạo một nhánh mới có tên là 'feature-login' và nó sẽ được tạo từ điểm hiện tại của nhánh hiện tại. Nếu bạn muốn chuyển sang nhánh mới ngay lập tức, bạn cần sử dụng lệnh 'git checkout' sau khi tạo nhánh mới.
Mở trang câu hỏi này →

Đề có câu hỏi của chủ đề này

2 đề chứa ít nhất một câu thuộc chủ đề — mở đề để làm cả bộ, không chỉ từng câu.