Security News
PyPI Introduces Digital Attestations to Strengthen Python Package Security
PyPI now supports digital attestations, enhancing security and trust by allowing package maintainers to verify the authenticity of Python packages.
The connect npm package is a middleware layer for Node.js, designed to be used as a part of the 'http' module. It allows developers to create a series of middleware functions to handle requests and responses in a sequential manner. Connect is often used to set up middleware that can perform various tasks such as logging, parsing, session handling, and more.
Logging
This feature allows you to log every request that comes into the server with the method and URL.
const connect = require('connect');
const app = connect();
// Middleware for logging
function logger(req, res, next) {
console.log('%s %s', req.method, req.url);
next();
}
app.use(logger);
app.listen(3000);
Static File Serving
This feature serves static files from a specified directory, in this case, 'public'.
const connect = require('connect');
const serveStatic = require('serve-static');
const app = connect();
app.use(serveStatic('public'));
app.listen(3000);
Body Parsing
This feature allows you to parse the body of incoming requests in middleware before handling them.
const connect = require('connect');
const bodyParser = require('body-parser');
const app = connect();
app.use(bodyParser.json());
app.use(function(req, res) {
res.end(JSON.stringify(req.body));
});
app.listen(3000);
Cookie Parsing
This feature allows you to parse cookies attached to the client request object.
const connect = require('connect');
const cookieParser = require('cookie-parser');
const app = connect();
app.use(cookieParser());
app.use(function(req, res) {
res.end(JSON.stringify(req.cookies));
});
app.listen(3000);
Express is a web application framework for Node.js, built on top of connect. It extends connect's middleware model with additional functionality like routing, template engine support, and more. Express is more feature-rich and is considered a de facto standard for Node.js web applications.
Koa is a web framework designed by the creators of Express, aiming to be a smaller, more expressive, and more robust foundation for web applications and APIs. Koa uses async functions to eliminate callbacks and greatly increase error-handling capabilities. It does not bundle any middleware within its core, and it provides an elegant suite of methods that make writing servers fast and enjoyable.
Hapi is a rich framework for building applications and services. It enables developers to focus on writing reusable application logic instead of spending time building infrastructure. Hapi is known for its powerful plugin system and comprehensive API.
Restify is a Node.js web service framework optimized for building semantically correct RESTful web services ready for production use at scale. It is somewhat similar to Express but is more focused on enabling the building of correct REST web services.
Connect is an extensible HTTP server framework for node, providing high performance "plugins" known as middleware.
Connect is bundled with over 20 commonly used middleware, including a logger, session support, cookie parser, and more. Be sure to view the 2.x documentation.
var connect = require('connect')
, http = require('http');
var app = connect()
.use(connect.favicon())
.use(connect.logger('dev'))
.use(connect.static('public'))
.use(connect.directory('public'))
.use(connect.cookieParser())
.use(connect.session({ secret: 'my secret here' }))
.use(function(req, res){
res.end('Hello from Connect!\n');
});
http.createServer(app).listen(3000);
first:
$ npm install -d
then:
$ make test
Below is the output from git-summary.
project: connect
commits: 2033
active : 301 days
files : 171
authors:
1414 Tj Holowaychuk 69.6%
298 visionmedia 14.7%
191 Tim Caswell 9.4%
51 TJ Holowaychuk 2.5%
10 Ryan Olds 0.5%
8 Astro 0.4%
5 Nathan Rajlich 0.2%
5 Jakub Nešetřil 0.2%
3 Daniel Dickison 0.1%
3 David Rio Deiros 0.1%
3 Alexander Simmerl 0.1%
3 Andreas Lind Petersen 0.1%
2 Aaron Heckmann 0.1%
2 Jacques Crocker 0.1%
2 Fabian Jakobs 0.1%
2 Brian J Brennan 0.1%
2 Adam Malcontenti-Wilson 0.1%
2 Glen Mailer 0.1%
2 James Campos 0.1%
1 Trent Mick 0.0%
1 Troy Kruthoff 0.0%
1 Wei Zhu 0.0%
1 comerc 0.0%
1 darobin 0.0%
1 nateps 0.0%
1 Marco Sanson 0.0%
1 Arthur Taylor 0.0%
1 Aseem Kishore 0.0%
1 Bart Teeuwisse 0.0%
1 Cameron Howey 0.0%
1 Chad Weider 0.0%
1 Craig Barnes 0.0%
1 Eran Hammer-Lahav 0.0%
1 Gregory McWhirter 0.0%
1 Guillermo Rauch 0.0%
1 Jae Kwon 0.0%
1 Jakub Nesetril 0.0%
1 Joshua Peek 0.0%
1 Jxck 0.0%
1 AJ ONeal 0.0%
1 Michael Hemesath 0.0%
1 Morten Siebuhr 0.0%
1 Samori Gorse 0.0%
1 Tom Jensen 0.0%
Connect < 1.x
is compatible with node 0.2.x
Connect 1.x
is compatible with node 0.4.x
Connect (master) 2.x
is compatible with node 0.6.x
View the LICENSE file. The Silk icons used by the directory
middleware created by/copyright of FAMFAMFAM.
FAQs
High performance middleware framework
We found that connect demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
PyPI now supports digital attestations, enhancing security and trust by allowing package maintainers to verify the authenticity of Python packages.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.