Понимание CORS и отправка запросов

У меня есть несколько сайтов, и я хочу объединить аналогичные функции на одном сервере.

С экономической точки зрения гораздо выгоднее настроить один сервер, который будет обрабатывать все запросы, чем устанавливать новый сервер каждый раз, когда я получаю нового клиента. Особенно, когда функционал практически идентичен.

Например, на всех моих сайтах есть контактные формы. Я хочу, чтобы сайты A, B и C отправляли ajax-запросы на один сервер Node.js, который обрабатывал запрос, а затем отправлял электронное письмо и регистрировал информацию в базе данных.

Я прочитал несколько вопросов, касающихся CORS и Node.js (используя экспресс), но у меня все еще не получилось. Поэтому любая помощь будет принята с благодарностью.

Кроме того, если есть какие-либо источники, которые помогли бы мне лучше понять REST в целом, это было бы неплохо.

EDIT: вот код --> https://gist.github.com/cyanogen32/8290499

заранее спасибо


person Dan    schedule 06.01.2014    source источник
comment
Ваш вопрос слишком общий, чтобы на него можно было ответить. Вам нужно показать, что вы пробовали, что не сработало. Как вы настроили CORS? Как вы сделали запрос?   -  person epascarello    schedule 07.01.2014
comment
Я отредактировал исходный пост, чтобы включить код, с которым я работаю.   -  person Dan    schedule 07.01.2014
comment
Пожалуйста, добавьте код в сообщение - ссылки устаревают, и этот вопрос поможет другим в будущем.   -  person iandotkelly    schedule 07.01.2014
comment
возможный дубликат веб-сокетов делает ajax/CORS устаревшим?   -  person Paul Sweatte    schedule 07.01.2014


Ответы (1)


Я добился успеха в этом:

app = express();
app.all('*', function(req, res, next) {
    res.header('Access-Control-Allow-Origin', '*');
    res.header('Access-Control-Allow-Methods', 'PUT, GET, POST, DELETE, OPTIONS');
    res.header('Access-Control-Allow-Headers', 'Content-Type, Authorization, Content-Length, X-Requested-With');
    next();
});
person Chris Tinsley    schedule 07.01.2014
comment
Я могу подтвердить. Подобные вещи мне приходилось использовать в некоторых моих проектах. - person oconnecp; 07.01.2014