Как я могу установить заголовок ответа на экспресс.активы в JS



Мне нужно установить CORS для включения в сценариях, обслуживаемых express. Как я могу установить заголовки в этих возвращенных ответах для public/assets?

676   5  

5 ответов:

существует по крайней мере один middleware на npm для обработки CORS в Express: cors. [см. @ mscdex ответ]

это как установить пользовательские заголовки ответа от ExpressJS DOC

res.set(field, [value])

установите для поля заголовка значение

res.set('Content-Type', 'text/plain');

или передать объект, чтобы установить несколько полей сразу.

res.set({
  'Content-Type': 'text/plain',
  'Content-Length': '123',
  'ETag': '12345'
})

псевдоним

res.header(field, [value])

Это так раздражает.

хорошо, если у кого-то все еще есть проблемы или просто не хочет добавлять другую библиотеку. Все, что вам нужно сделать, это разместить эту среднюю строку кода перед вашими маршрутами.

Пример Cors

app.use((req, res, next) => {
    res.append('Access-Control-Allow-Origin', ['*']);
    res.append('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
    res.append('Access-Control-Allow-Headers', 'Content-Type');
    next();
});

// Express routes
app.get('/api/examples', (req, res)=> {...});

существует по крайней мере одно промежуточное программное обеспечение на npm для обработки CORS в Express: cors.

вы можете сделать это с помощью cors. cors будет обрабатывать ваш ответ CORS

var cors = require('cors')

app.use(cors());

@klode ответ правильный.

тем не менее, вы должны установить другой заголовок ответа, чтобы сделать ваш заголовок доступным для других.


пример:

во-первых, вы добавляете "размер страницы" в заголовке ответа

response.set('page-size', 20);

тогда все, что вам нужно сделать, это выставить свой заголовок

response.set('Access-Control-Expose-Headers', 'page-size')

Comments

    Ничего не найдено.