通过 Ajax 发送数据并在操作控制器上处理它们



我正在尝试通过Ajax发送一些地理位置数据,并在控制器的特定操作上处理它们。

代码(在视图中)如下所示:

$.ajax({
        type: "GET",
        url: "/save_location",
        data: "lat=" + position.coords.latitude + "&long=" +  
            position.coords.longitude
});

我有一个位于users controller save_location操作:

 def save_temp_location
    cookies[:lat] = params[:lat]
    cookies[:long] = params[:long]
 end

我想在用户浏览网站时临时保存这些数据。在我的视图中,我试图显示cookies[:lat]的值,cookies[:long]检查它是否有效:不幸的是,没有显示任何内容。我查看了发出GET请求的控制台(路由正确):

Started GET "/save_location?lat=48.856666&long=2.350987" for 127.0.0.1 at 2011-05-09 12:02:25 +0100
  Processing by UsersController#save_temp_location as 
  Parameters: {"lat"=>"48.856666", "long"=>"2.350987"}
Redirected to http://fr.localhost.dev:3000/
Completed 302 Found in 1ms

我尝试通过在该操作中放置 a: puts "foo"raise "foo" 进行调试,但没有任何反应(但是我在手动浏览到/save_location 时确实得到了适当的行为)。302 http code,与此有关吗?(在这种情况下这意味着什么?

你认为有什么问题?我错过了一个非常重要的点吗?

谢谢!

你不是被过滤器重定向了吗?

相关内容

  • 没有找到相关文章

最新更新