在获取请求之前发送AJAX请求

时间:2012-07-04 07:03:30

标签: javascript ruby-on-rails ruby ajax

我正在使用javascript window.open方法发送GET请求,我需要在其中传递一些ID数组。所以当我得到这样的URL时:

http://localhost:3000/controller_path/new?ids[]=1025&ids[]=1027

但这是不可接受的。网址不应该是这样的。我无法通过POST发送参数,因为我的团队负责人否认了这一点。

我想知道我可以在主GET请求之前发送ajax请求并使用ids传递数组,将其存储在我的“新”方法中并在GET时使用它们请求正在发送?如果有可能我怎么能在rails中这样做?换句话说,我需要使用ajax请求发送我的数组,以某种方式存储它并在发送我的实际GET请求时使用它。谢谢你的回复。

2 个答案:

答案 0 :(得分:2)

您可以使用JSON序列化数据。

所以如果你有:

var ids = [9,4,5,8];

您可以使用:

var getString = "?ids="+JSON.stringify(ids);
var filePath = "whereYouAreSending";
window.open(filePath+getString);

答案 1 :(得分:0)

使用控制器方法定义route以处理数据