我目前正在开发一个主干应用程序,您必须在其中指定来宾名称才能进入。
Guest = Backbone.Model.extend({
urlRoot : ftd.settings.rest + '/guest',
defaults: {
name : '',
},
validate: function( attr ) {
var errors = [];
if(attr.name.length < 4) {
errors.push({message : "You nickname, must be atleast 4 chars", name : 'guestNickname'});
}
if(errors.length > 0) {
return errors;
}
}
});
return Guest;
所以在我的首页上,用户设置了一个用户名并实例化了一个新的来宾,这是我处理来宾创建的首页视图。
createGuest: function( ev ) {
ev.preventDefault();
// Get nickname.
var guest = new Guest();
guest.bind( 'error', function( model, errors ) {
_.each( errors, function( err ) {
$('input[name=' + err.name + ']').addClass('invalid');
// add a meesage somewhere, using err.message
}, this );
});
guest.save({'name' : $('input[name="guestNickname"]').val()}, {
success:function(model, response) {
console.log('Successfully saved!');
},
error: function(model, error) {
console.log(model);
console.log(error.error());
}
});
},
我的问题是,当主干发出请求时,它发送了一个没有指定名称的 OPTIONS 请求,我什至在 Wireshark 中检查了数据包,我做错了什么?
额外问题:为什么骨干网发送 OPTIONS 请求?