Which of the following is a common use case for OAuth?
- Storing user passwords securely
- Generating random API keys
- Allowing third-party applications to access user data
- Creating secure database connections
OAuth is commonly used to allow third-party applications to access user data without exposing the user's credentials. It is a widely adopted protocol for authorization in the context of web applications and APIs. The other options do not represent typical use cases for OAuth.
The process of rewriting a SQL query to improve its efficiency without changing its behavior is known as ________.
- Query Tuning
- Query Optimization
- Query Refactoring
- Query Modification
The process of rewriting a SQL query to improve its efficiency without changing its behavior is known as "Query Optimization." This involves making changes to the query or its execution plan to make it faster while still returning the same results.
What will be the default encoding when converting a buffer to a string in Node.js?
- utf-8
- binary
- ascii
- base64
When converting a buffer to a string in Node.js, the default encoding is utf-8. It's important to specify the encoding when performing this conversion, as using the wrong encoding can lead to incorrect results or data corruption.
Which command is used to install Express in your Node.js project?
- npm install express
- npm express install
- install -g express
- node express-install
To install the Express framework in your Node.js project, you should use the command npm install express. This command will download and install the Express package and its dependencies. The other options are not valid ways to install Express.
How does the 'events' module in Node.js help in managing asynchronous operations?
- It provides a way to pause and resume asynchronous tasks.
- It allows you to execute asynchronous tasks in parallel.
- It provides an event-driven architecture for handling asynchronous operations.
- It enables synchronous execution of asynchronous tasks.
The 'events' module in Node.js is designed to facilitate event-driven programming, allowing you to handle asynchronous operations by defining event listeners and emitters. It does not provide mechanisms for pausing, resuming, or executing tasks synchronously.
A ______ request is sent by the browser before the actual request to check the server’s CORS policy.
- preflight
- probe
- inspection
- initiation
A "preflight" request is sent by the browser before the actual cross-origin request to check the server's CORS policy. It helps the browser determine whether the actual request is safe to send and whether the server will allow it.
During the development of a Node.js application, you realize that multiple packages are not compatible with each other due to different required versions. How would you resolve the incompatibility between these packages?
- Delete one of the incompatible packages
- Use a tool like npm-shrinkwrap to lock package versions
- Update all packages to their latest versions
- Modify your code to work with the conflicting versions
To resolve package version incompatibility, you can use a tool like npm-shrinkwrap to lock package versions, ensuring that all team members use the same versions. Deleting packages or updating them indiscriminately can introduce issues.
The process object in Node.js emits a ______ event when the Node.js process is about to exit.
- beforeExit
- exit
- shutdown
The process object in Node.js emits the beforeExit event just before the Node.js process is about to exit. This event allows you to perform cleanup tasks before the process terminates.
When using semantic versioning, what is the recommended way to handle deprecations?
- Deprecations should be documented in the code comments only.
- Deprecations should be ignored as they don't fit into semantic versioning.
- Deprecations should be marked as 'deprecated' in code comments and, if necessary, in the README or documentation.
- Deprecations should be removed from the codebase without any notice.
In semantic versioning, it's recommended to mark deprecations as 'deprecated' in code comments and, when applicable, in the README or documentation. This helps users of the library or package understand what's changing and how it might impact their code.
To avoid cross-site scripting (XSS) attacks, EJS escapes any JavaScript code included within the ______ tags by default.
- <%= %>
- {{ }}
- {% %}
- ()()
In EJS, to avoid XSS attacks, JavaScript code is escaped by default when placed within <%= %> tags. This means that any code within these tags will be treated as plain text and not executed. The other options are not used for escaping JavaScript code in EJS.