我正在尝试从我的localhost到另一个域(https://xyz)进行api调用
我的解决方案:
<script> // ajax prefilter
$.ajaxPrefilter( function( options, originalOptions, jqXHR ) {
options.crossDomain ={
crossDomain: true
};
options.xhrFields = {
withCredentials: true
};
options.url = 'https://xyz' + options.url;
});
</script>
<script> // collection
var KCollection = Backbone.Collection.extend({
url: '/api/s/y/',
});
</script>
<script> // view
var DataAgesView = Backbone.View.extend({
render: function(){
var that = this;
mycollecion = new KCollection();
mycollecion.fetch({
dataType: 'jsonp',
success: function(){
console.log('success!');
},
error: function() { console.log('Uh Oh!'); },
})
}
});
</script>
这将向&#34; https://xyz/api/s/y&#34;
发送GET请求我可以通过查看开发工具/网络看到数据回到我的浏览器。
但是有这样的错误:Uncaught SyntaxError:意外的令牌:
我是web和backbone.js的新手。我使用jsonp只能调用跨域,我可以使用任何其他解决方案(只要我理解它)。
请注意,我的服务器返回&#34; json&#34;我无法从服务器端改变任何东西。