запуск npm-использование CORS
Я работаю над небольшим приложением, используя Angular2. В 5мин. Краткое Руководство npm используется для установки необходимых модулей и запуска lite-сервера. Позже я хочу использовать это приложение на обычном веб-сервере и создавать мобильные приложения с помощью cordova. Как бы то ни было, я использую REST api для загрузки некоторых данных. Как настроить lite-сервер для проверки параметров перед полетом CORS? Мой сервер apache (на выделенном сервере) уже настроен, но я не хочу фиксировать, обновлять и перекомпилируйте каждое маленькое изменение. Мне нужна соответствующая конфигурация для этого:
Header always set Access-Control-Allow-Origin "https://my-domain.net:12345"
Header always set Access-Control-Allow-Headers "X-Requested-With, Content-Type, Origin, Authorization, Accept, Client-Security-Token, Accept-Encoding"
Header always set Access-Control-Allow-Methods "POST, GET, OPTIONS, DELETE, PUT"
Header always set Access-Control-Max-Age "1000"
3 ответов
нет встроенной опции для этого в lite-сервере. Тем не менее, вы можете исправить это, но я действительно не вижу, что вы пытаетесь сделать здесь...
после его установки вы можете перейти в node_modules/lite-server
папка и установите connect-cors
:
npm install connect-cors
затем в lib/lite-server.js file
, вы можете импортировать модуль и использовать его промежуточного массива после:
var historyFallback = require('connect-history-api-fallback');
var log = require('connect-logger');
var cors = require('connect-cors'); // <------------------
(...)
sync.init({
port: argv.port || 3000,
server: {
baseDir: options.baseDir,
middleware: [
cors(), // <------------------
log(),
historyFallback({ index: options.fallback })
]
},
files: options.files,
});
при запуске сервера со следующей командой поддержка CORS использовать:
./bin/lite-server --baseDir ../../
добавить Origin
заголовок в запросах вы увидите заголовки CORS в ответе.
на самом деле лайт-сервер-это всего лишь оболочка браузера-синхронизация, если вы можете проверить документы из https://www.browsersync.io/docs/options, Вы можете найти конфигурацию CORS, а потому, что Лайт-сервер поддержка использовать конфигурационный файл, чтобы установить параметры, поэтому все, что вам нужно сделать, это просто установить конфиг файл для Lite-сервер, вы можете выбрать БС-конфиг.JS или BS-config.json, если мы используем самый простой BS-config.json, contente является:
{
"cors": true
}
после этого вы сразу начинаете lite-сервер, вы можете увидеть:
конфигурация синхронизации браузера
{ injectChanges: false,
files: [ './**/*.{html,htm,css,js}' ],
watchOptions: { ignored: 'node_modules' },
server: { baseDir: './', middleware: [ [Function], [Function] ] },
cors: true }
[BS] url доступа:
Local: http://localhost:3000
это означает, что cors работает.