Там находится следующая модель AmpersandJSПерекрестной происхождении из AmpersandJS
var AmpersandModel = require('ampersand-model');
module.exports = AmpersandModel.extend({
urlRoot: 'http://0.0.0.0:4567/api/v1/people',
props: {
id: 'any',
name: ['string', true, ''],
wins: ['number', true, 0],
draws: ['number', true, 0],
looses: ['number', true, 0]
},
ajaxConfig: function() {
return {
headers: {
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods': "GET, POST, PUT, DELETE, OPTIONS",
'Access-Control-Allow-Headers': "accept, authorization, origin"
},
xhrFields: {
'withCredentials': false
}
};
}
});
Когда «сохранить» называется на модели, метод запроса преобразуется в ВАРИАНТЫ и появляется очевидная ошибка
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://0.0.0.0:4567/api/v1/people. (Reason: CORS header 'Access-Control-Allow-Origin' missing).
Любой идея как этого избежать?
Это не имеет особого отношения к ampersand.js. 'Access-Control-Allow-Origin' и другие заголовки должны быть отправлены сервером, к которому вы пытаетесь получить доступ. См. Http://enable-cors.org/server.html, например – amberv
, они установлены правильно в соответствии с документацией. – MikeZ
Ваш сервер должен обрабатывать запрос предварительной проверки CORS. Очевидно, это не делается. Все заголовки «Access-Control- *», которые вы отправляете из браузера, не нужны, и вы должны удалить их. Ваш _server_ должен отправить эти заголовки. –