Fix createServer to properly handle Node.js-compatible options paramete #210
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fix createServer to properly handle Node.js-compatible options parameter
fix #183 fix #209
Issue
Currently, when using
createServer
with options similar to Node.js, it causes a TypeError:The signature of
createServer
needs to be consistent with Node.js, where options can be passed as the first argument.Changes
This PR implements:
Server.js
constructor to properly handle options vs. connectionListener argumentsServerOptions
type definition with support for:noDelay
keepAlive
keepAliveInitialDelay
allowHalfOpen
pauseOnConnect
listen()
method to match Node.js signature patterns:listen(port, [host], [callback])
listen(options, [callback])
_applySocketOptions
method to apply server options to new socket connectionsTesting
The following patterns now work without errors:
These changes improve compatibility with code written for Node.js and make the library more intuitive to use for developers familiar with the Node.js API.