SDN301mChưa đoKỳ 7Chuyên ngành Cập nhật 28/03/2026

Server-Side development with NodeJS, Express, MongoDB - SDN301m

SDN301m cung cấp kiến thức toàn diện về lập trình Backend với NodeJS, Express framework và MongoDB. Học cách xây dựng RESTful API, bảo mật Web và triển khai ứng dụng thực tế.

109Câu hỏi
3Bộ đề
1Chủ đề
Thử sức tại chỗ

Trả lời ngay tại đây

Chưa trả lời câu nào
1SDN301m - Tổng hợp câu hỏi ôn tập
In Nodejs how node based web servers differ from traditional web servers?
2SDN301m - Tổng hợp câu hỏi ôn tập
What is the Node LTS version?
3SDN301m - Tổng hợp câu hỏi ôn tập
Which syntax is correct for declaring a Mongo collection named theFarm?
Còn 3 câu nữa ở trên

Trả lời hết các câu trên để xem tổng kết, hoặc vào phiên học ngay.

Học từ ngân hàng câu hỏi

Bắt đầu một phiên học theo môn

Tiến độ của bạn luôn được tính và đồng bộ trực tiếp theo tổng số lượng câu hỏi mới nhất của môn học này.

109Ngân hàng hiện tại--Tiến độ môn

Câu hỏi của môn

24/109 câuCòn 85
AIt provides an easy way to build scalable network programs
BGenerally fast
CGreat concurrency
DAll the answers are correct
Lời giải
Node.js là một công nghệ phát triển ứng dụng web dựa trên JavaScript, cho phép xây dựng các ứng dụng mạng có khả năng mở rộng dễ dàng. Nó cung cấp một môi trường thực thi JavaScript ở bên ngoài trình duyệt, cho phép các nhà phát triển xây dựng các ứng dụng mạng hiệu suất cao và linh hoạt. Node.js sử dụng mô hình non-blocking I/O, cho phép các ứng dụng xử lý nhiều yêu cầu đồng thời mà không cần chờ đợi nhau. Điều này làm cho Node.js trở thành một lựa chọn phổ biến cho các ứng dụng mạng cần xử lý một lượng lớn dữ liệu và yêu cầu nhanh chóng.
Mở trang câu hỏi này →
ADon't use synchronous functions
BUse gzip compression
CDo logging correctly
DHandle exceptions properly
Lời giải
Để cải thiện hiệu suất của ứng dụng, bạn nên tránh sử dụng các hàm đồng bộ (synchronous functions) trong mã nguồn của mình. Các hàm đồng bộ có thể gây ra tình trạng tắc nghẽn và làm chậm ứng dụng. Thay vào đó, bạn nên sử dụng các hàm bất đồng bộ (asynchronous functions) như async/await hoặc các thư viện như Promise để thực hiện các tác vụ một cách hiệu quả hơn. Điều này sẽ giúp ứng dụng của bạn xử lý các yêu cầu nhanh chóng và hiệu quả hơn, từ đó cải thiện hiệu suất và trải nghiệm người dùng.
Mở trang câu hỏi này →
Đề bài
var my_module = require('/mymodule');
console.log((function(settings){
  return settings.split().reverse().join()
}

)())

A(my_module.name)); PTE REL Se ty PUI eaten thy,Error,Zeus,undefined,sueZ,[] 8,What is the term used in reference to two or more authentication methods used to authenticate someone.,Multifactor authentication,Two-factor authentication,Single Sign On,Passwords hal Loa Rae eC Te,[] 9,Which of these is the most logical first step in an API development project?,Create a functional view of the related application,Put API usage monitoring in place,Choose either an API proxy or an API gateway,All the answers are wrong Toten rer dy YORE TA 8 My! PE COS BS 1D,[] 10,MongoDB can be used as a, taking advantage of load balancing and data replication features over multiple machines for storing files |
BAMS
CCMS
DFile system Loch we ie byeuepe tyres,
ENone of the mentioned Se i Sn MSO SMEAR MD od! Fite Cet oa
Lời giải
Mã nguồn dưới đây sẽ được thực hiện theo thứ tự sau: 1. Khai báo biến my_module bằng cách sử dụng hàm require để tải module my_module. 2. Khai báo hàm anonymous với tham số settings. 3. Trong hàm anonymous, thực hiện các hành động sau: - Chuyển đổi settings thành mảng bằng cách sử dụng hàm split(). - Lật ngược mảng vừa được tạo bằng cách sử dụng hàm reverse(). - Kết hợp các phần tử trong mảng đã được lật ngược lại thành chuỗi bằng cách sử dụng hàm join(). 4. Gọi hàm anonymous mà không truyền bất kỳ tham số nào. 5. In kết quả của hàm anonymous vào console. Vì settings là chuỗi 'Zeus', nên sau khi thực hiện các hành động trên, kết quả sẽ là 'seuZ'.
Mở trang câu hỏi này →
AAcell
BAdocument
CAspeadsheet
DA table
Lời giải
Trong MongoDB, một nhóm dữ liệu liên quan được gọi là "collection". Collection là một tập hợp các tài liệu (document) có liên quan đến nhau. Mỗi tài liệu trong collection có thể có cấu trúc khác nhau và có thể chứa các trường (field) khác nhau. Ví dụ, một collection có thể chứa thông tin về các sản phẩm trong một cửa hàng, với mỗi tài liệu đại diện cho một sản phẩm cụ thể. Collection được sử dụng để lưu trữ và quản lý dữ liệu trong MongoDB.
Mở trang câu hỏi này →
AinsertData("test", "testData", 200)
BinsertData("test", "testData", 400)
CinsertData("test", "testData", 600) Se Ay
Dall of the mentioned
Lời giải
Để trả lời câu hỏi này, chúng ta cần hiểu chức năng của hàm insertData(). Hàm này được sử dụng để chèn dữ liệu vào một tập dữ liệu (collection) trong cơ sở dữ liệu. Trong trường hợp này, chúng ta cần chèn 400 tài liệu (document) vào tập dữ liệu testData. Các lựa chọn được đưa ra bao gồm insertData("test", "testData", 200), insertData("test", "testData", 400) và insertData("test", "testData", 600). Để xác định câu trả lời đúng, chúng ta cần xem xét giá trị thứ ba trong hàm insertData(), đó là số lượng tài liệu cần chèn. Câu trả lời đúng sẽ là insertData("test", "testData", 400) vì nó chính xác về số lượng tài liệu cần chèn.
Mở trang câu hỏi này →
AAnetwork layer, like an API gateway
BAsecurity setup, like identity and access management
CAn underlying standard, like OpenAPI
DAn interpreted code language, like Python
Lời giải
Để giúp các nhà phát triển phối hợp quy trình tạo mã API, chúng ta cần có một tiêu chuẩn chung. Tiêu chuẩn này sẽ cung cấp một ngôn ngữ chung để mô tả API, giúp dễ dàng tạo và quản lý mã API. Một trong những tiêu chuẩn phổ biến nhất là OpenAPI. OpenAPI là một ngôn ngữ mô tả API được sử dụng rộng rãi trong ngành công nghiệp phần mềm. Nó cho phép các nhà phát triển mô tả cấu trúc và chức năng của API một cách rõ ràng, giúp dễ dàng tạo mã API và tích hợp với các hệ thống khác. Ngoài ra, OpenAPI cũng cung cấp các công cụ và công nghệ để tự động tạo mã API dựa trên mô tả API, giúp giảm thiểu thời gian và công sức cần thiết để tạo mã API.
Mở trang câu hỏi này →
ANode.js
BReactjs
CRedux.js
DAngular.js
Lời giải
Express là một khung ứng dụng web đơn giản và linh hoạt. Nó cho phép bạn tạo ra các ứng dụng web nhanh chóng và hiệu quả. Để sử dụng Express, bạn cần có Node.js, một môi trường chạy JavaScript trên máy chủ. Express cung cấp các tính năng như hỗ trợ các loại nội dung khác nhau, quản lý các yêu cầu HTTP, và tạo ra các ứng dụng web đa nền tảng. Nó cũng cho phép bạn sử dụng các thư viện và công cụ khác để tăng cường khả năng của ứng dụng web.
Mở trang câu hỏi này →
12In ExpressJS6 lựa chọn
Athe method app.all(path
Bcallback [
Ccallback.}]
DFalse
ETrue
FInsufficient data
Lời giải
Trong ExpressJS, phương thức app.all(path, callback) được sử dụng để định nghĩa một hàm xử lý cho tất cả các phương thức HTTP (GET, POST, PUT, DELETE, ...). Điều này cho phép bạn thực hiện một hành động chung cho tất cả các yêu cầu HTTP đến một đường dẫn cụ thể. Ví dụ, bạn có thể sử dụng app.all để kiểm tra quyền truy cập hoặc thực hiện một hành động bảo mật trước khi xử lý yêu cầu HTTP thực tế.
Mở trang câu hỏi này →
A2
B3
C5 Toten Oh HUES fa Ady a SOL aa VPN Tae Meannene sot any paere: acne
Lời giải
Firebase Database Rule có hai loại chính. Loại đầu tiên là Rule cơ bản, cho phép bạn kiểm soát quyền truy cập vào dữ liệu của ứng dụng. Bạn có thể thiết lập các quy tắc để cho phép hoặc chặn truy cập vào dữ liệu dựa trên các điều kiện như ID người dùng, địa điểm, v.v. Loại thứ hai là Rule nâng cao, cho phép bạn thiết lập các quy tắc phức tạp hơn để kiểm soát quyền truy cập vào dữ liệu. Ví dụ, bạn có thể thiết lập các quy tắc để cho phép truy cập vào dữ liệu chỉ khi người dùng đã đăng nhập và có quyền truy cập phù hợp.
Mở trang câu hỏi này →
AAuthentication
BAPIs
CDebugging
DScaffolding
Lời giải
Scaffolding cho phép chúng ta dễ dàng tạo một khung xương cho một ứng dụng web. Nó cung cấp một cấu trúc cơ bản cho ứng dụng, bao gồm các file và thư mục cần thiết để bắt đầu phát triển. Scaffolding giúp giảm thiểu thời gian và công sức cần thiết để tạo một ứng dụng web mới, đồng thời cũng giúp đảm bảo rằng ứng dụng được xây dựng theo các tiêu chuẩn và quy trình nhất quán.
Mở trang câu hỏi này →
Aauthentication
Bauthorization
Caccounting
Dauditing
Lời giải
Quá trình xác định một cá nhân được gọi là xác thực. Xác thực là quá trình xác minh danh tính của một cá nhân hoặc thiết bị để đảm bảo rằng họ có quyền truy cập vào hệ thống hoặc tài nguyên cụ thể. Quá trình này thường bao gồm việc nhập thông tin xác thực, chẳng hạn như tên người dùng và mật khẩu, và sau đó so sánh nó với thông tin được lưu trữ trong cơ sở dữ liệu. Nếu thông tin xác thực khớp, cá nhân hoặc thiết bị sẽ được xác thực và có thể truy cập vào hệ thống hoặc tài nguyên.
Mở trang câu hỏi này →
AThe open process approach
BThe model approach
CThe iPaaS approach
DAll the answers are wrong
Lời giải
Trong các chiến lược quản lý API, chiến lược nào chọn một mô hình của API RESTful và hỗ trợ việc thích nghi của mô hình đó với các yêu cầu về giao diện cụ thể của dự án?
Mở trang câu hỏi này →
Adb.findQ.count
Bdb.findQ.countQ
Cdb.find.count()
Ddb.find.count TATE ee ote UO By banal See i WHEN GE Ma Ba! Tosa dhe ee ny
Lời giải
Để trả về số lượng bản ghi được lưu trữ trong một collection, chúng ta cần sử dụng phương thức count() của phương thức find() trong MongoDB. Phương thức này sẽ trả về số lượng bản ghi được tìm thấy trong collection. Ví dụ, nếu chúng ta muốn tìm số lượng bản ghi trong collection 'users', chúng ta có thể sử dụng lệnh sau: db.users.find().count().
Mở trang câu hỏi này →
18You have to read a large text file6 lựa chọn
Areplace some words in it
Band write it back to a new file. You know that the memory on your target system is limited. What should you do?
CUse regular expressions directly on the file
DUse Promises and async/await to offload the task to libuv
ECopy the file into a database and perform the operations there
FUse readline together with streams to read and transform and write the file contents line by line ro NEE a She ote pole eniet Dee ut lau
Lời giải
Khi bạn cần đọc một tệp văn bản lớn nhưng hệ thống mục tiêu của bạn có bộ nhớ hạn chế, bạn nên chọn cách thức xử lý tệp đó một cách hiệu quả. Một trong những cách tốt nhất là sao chép tệp vào cơ sở dữ liệu và thực hiện các hoạt động xử lý dữ liệu trong đó. Điều này cho phép bạn tận dụng sức mạnh của cơ sở dữ liệu trong việc xử lý dữ liệu lớn mà không cần phải lưu trữ toàn bộ tệp vào bộ nhớ. Ngoài ra, cách thức này cũng giúp bạn dễ dàng quản lý và bảo trì dữ liệu, cũng như thực hiện các hoạt động xử lý dữ liệu một cách linh hoạt và hiệu quả.
Mở trang câu hỏi này →
ATrue
BFalse
CCan be true or false
DCan not say
Lời giải
Hàm limitToFirst() trong MongoDB trả về số lượng mục được chỉ định bắt đầu từ mục đầu tiên. Điều này có nghĩa là hàm sẽ trả về một mảng chứa các mục đầu tiên theo thứ tự được chỉ định. Ví dụ, nếu bạn gọi hàm limitToFirst(3), nó sẽ trả về 3 mục đầu tiên trong mảng. Hàm này thường được sử dụng để giới hạn số lượng dữ liệu được trả về trong một truy vấn.
Mở trang câu hỏi này →
A5228
B5229
C5230
D5231
Lời giải
FCM (Firebase Cloud Messaging) sử dụng các cổng để gửi và nhận tin nhắn. Các cổng thường được sử dụng bởi FCM bao gồm 5228, 5229 và 5230. Tuy nhiên, cổng 5231 không được sử dụng bởi FCM. Điều này có thể là do cổng này không được hỗ trợ hoặc không được sử dụng trong quá trình gửi và nhận tin nhắn của FCM. Vì vậy, câu trả lời đúng cho câu hỏi này là cổng 5231.
Mở trang câu hỏi này →
Afail
BdoesNotThrow
CdeepStrictEqual
DifError
Lời giải
Trong lập trình Node.js, khi sử dụng các callback, chúng ta thường gặp trường hợp cần kiểm tra lỗi. Để làm điều này, chúng ta có thể sử dụng phương thức assert.ifError() từ module assert. Phương thức này sẽ kiểm tra xem argument đầu tiên của callback có phải là lỗi hay không. Nếu là lỗi, thì phương thức này sẽ không throw ra lỗi, ngược lại, nếu không phải là lỗi, thì phương thức này sẽ throw ra lỗi. Điều này giúp chúng ta dễ dàng kiểm tra và xử lý lỗi trong các callback.
Mở trang câu hỏi này →
Asecurity token
Bdigital certificate
Cdigital signature
DPIN
Lời giải
Mật khẩu số bí mật được sử dụng để xác thực là một chuỗi số được sử dụng để xác minh danh tính của người dùng. Nó thường được sử dụng trong các hệ thống tài khoản ngân hàng, thẻ tín dụng và các ứng dụng khác. Mật khẩu số bí mật thường được gọi là PIN (Personal Identification Number). Nó được sử dụng để xác thực người dùng khi họ thực hiện các giao dịch hoặc truy cập vào tài khoản của mình. Ví dụ, khi bạn sử dụng thẻ tín dụng để mua hàng, bạn sẽ được yêu cầu nhập vào PIN của mình để xác thực giao dịch. Tương tự, khi bạn truy cập vào tài khoản ngân hàng trực tuyến, bạn sẽ được yêu cầu nhập vào PIN của mình để xác thực danh tính của mình. Mật khẩu số bí mật là một phương thức xác thực an toàn và hiệu quả để bảo vệ tài khoản và dữ liệu cá nhân của người dùng.
Mở trang câu hỏi này →
AAllows to set up middlewares to respond to HTTP Requests
BDefines a routing table which can work as per HTTP Method and URL
CDynamically render HTML Pages
DAll of the others
Lời giải
Express là một framework web nhẹ và linh hoạt cho Node.js. Nó cho phép bạn tạo ra các ứng dụng web nhanh chóng và hiệu quả. Một trong những tính năng chính của Express là khả năng thiết lập các middleware để phản hồi các yêu cầu HTTP. Điều này cho phép bạn thực hiện các tác vụ như xác thực người dùng, kiểm tra quyền truy cập và xử lý dữ liệu trước khi nó được gửi đến người dùng. Ngoài ra, Express cũng định nghĩa một bảng định tuyến (routing table) có thể hoạt động theo phương thức HTTP và URL. Điều này cho phép bạn tạo ra các ứng dụng web có khả năng tương tác với người dùng một cách linh hoạt. Cuối cùng, Express cũng cho phép bạn tạo ra các trang HTML được render động. Tóm lại, Express cung cấp các tính năng cốt lõi như khả năng thiết lập middleware, định nghĩa bảng định tuyến và render trang HTML được động.
Mở trang câu hỏi này →
24What are the key features of Node.js?4 lựa chọn
AReal time Data intensive
BHighly scalable servers for Web Applications
CBuilds fast and scalable network Applications
DAll the answers are correct
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, cho phép xây dựng các ứng dụng web và mạng lưới nhanh chóng và có khả năng mở rộng. Một số tính năng chính của Node.js bao gồm khả năng xử lý dữ liệu thời gian thực (real-time data intensive), khả năng tạo ra các máy chủ có khả năng mở rộng cao (highly scalable servers for Web Applications) và khả năng xây dựng các ứng dụng mạng lưới nhanh chóng và có khả năng mở rộng (Builds fast and scalable network Applications). Tất cả các tính năng này làm cho Node.js trở thành một lựa chọn phổ biến cho các nhà phát triển khi xây dựng các ứng dụng web và mạng lưới phức tạp.
Mở trang câu hỏi này →