问题
I am using Express for web services and I need the responses to be encoded in utf-8.
I know I can do the following to each response:
response.setHeader('charset', 'utf-8');
Is there a clean way to set a header or a charset for all responses sent by the express application?
回答1:
Just use a middleware statement that executes for all routes:
// a middleware with no mount path; gets executed for every request to the app
app.use(function(req, res, next) {
res.setHeader('charset', 'utf-8')
next();
});
And, make sure this is registered before any routes that you want it to apply to:
app.use(...);
app.get('/index.html', ...);
Express middleware documentation here.
来源:https://stackoverflow.com/questions/31661449/express-js-how-to-set-a-header-to-all-responses