我有一个rails应用程序,使用OmniAuth连接其他服务提供商。
我的应用程序有用户模型和任务模型,用户有很多任务,任务属于用户。
用户登录应用程序后,我将视图重定向设置为任务列表索引。
我期待重定向时,jQuery将调用Ajax getJSON函数并从提供程序获取json数据,并将它们存储到我的数据库中。 我已将以下代码放入application.js
$.ajaxSetup({
dataType: 'json',
beforeSend: function(xhr){
xhr.setRequestHeader('Authorization', 'OAuth '+token);
},
contentType: "application/json; charset=utf-8"
});
此外,我还添加了一个名为task.js的js文件,并将其包含在任务索引视图中。在task.js中
function GetTasks(){
$.getJSON(url, function(data){
console.log(data);
});
}
$.ready(function(){
GetTasks();
});
问题:似乎我的$ .ajaxSetup设置在加载任务索引视图时从未发生过。我该如何修改让我的想法发生?
非常感谢你。
------- ------- UPDATE
我已将流动的代码添加到我的application_controller
after_filter :set_access_control_headers
def set_access_control_headers
headers['Access-Control-Allow-Origin']='*'
headers['Access-Control-Request-Method']='*'
end
答案 0 :(得分:0)
我期待重定向时,jQuery将调用Ajax getJSON函数并从提供程序获取json数据,并将它们存储到我的数据库中。我已将以下代码放入application.js
我不太清楚发生了什么,但我认为你要做的事情违反了ajax请求的same source
规则。出于安全原因,您只能向加载页面的同一域发出异步请求。如果情况并非如此,请澄清您的问题。