【发布时间】:2014-08-07 09:04:01
【问题描述】:
所以我正在使用 ruby 的葡萄创建一个 API,并通过 http-headers 发送身份验证。
我的 ajax 调用:
$.ajax({
type: "GET",
url: "some_url.com",
headers: {"auth": my_auth},
success: function(data){console.log(data})
})
我的葡萄 API::Root
....
before do
puts "Hello World"
header['Access-Control-Allow-Origin'] = '*'
header['Access-Control-Allow-Headers'] = "*"
end
有趣的是,如果我在没有标头属性的情况下发送它,我的 ajax 调用是有效的。 我也尝试过将 beforeSend 与 request.setRequestHeader 一起使用,但它仍然不起作用。但是,当我附加标头属性时,甚至没有在控制台中看到“Hello World”。
这是一个错字,对不起。
【问题讨论】:
-
您是否检查了浏览器的 JavaScript 控制台以查看那里是否报告了错误消息?
-
啊,是的,废话,我没有注意到邮件上附加了标头,它会首先向未处理的“some_url.com”发出 OPTIONS 请求。所以是的,我所做的只是为选项“[.*]”添加一个路由,它可以处理任何事情,但无论如何什么也没做。不知道什么是最好的做法。