如何向Rails中的需要验证的操作发出AJAX请求?
问题描述:
我想向使用before_filter
验证用户的Rails控制器发送AJAX请求。当请求被发送的问题是,在服务器要求进行身份验证,即使用户已经登录如何向Rails中的需要验证的操作发出AJAX请求?
这里是我的AJAX请求:
$.ajax({
type: 'DELETE',
url: "/messages/delete_all",
data: [1,2,4],
success: function() {
console.log("Your request is received.")
}
});
当用户从浏览器中点击delete_all
,它工作,但与AJAX它没有。是什么赋予了?
编辑:它可能与authenticity_token
有关吗?
答
也许这个问题会有所帮助:Using javascript with the twitter API
的解决方案提出,应该是这个样子,你的情况
$.ajax({
type: 'DELETE',
url: "/messages/delete_all",
data: [1,2,4],
beforeSend: function(xhr) {
xhr.setRequestHeader("Authentication", "Basic " + encodeBase64(username + ":" + password)
},
success: function() {
console.log("Your request is received.")
}
});
你用什么样的认证?是否像http-basic-auth? – Wukerplank 2011-03-25 07:28:43
是的,我认为是。我正在使用Devise,但我看到的弹出窗口对于http-basic-auth来说很典型。 – picardo 2011-03-25 07:30:22