2

来自 Rails 的 InvalidAuthenticityToken 用于 POST 请求 大家好,我有一个正在运行的 Rails 服务器,我向其发出 POST 请求。

数据集定义为

现在根据 Rails 文档,为了发出 POST 请求,我需要将添加“authenticity_token”设置为查询字符串。因此,例如,如果authenticity_token 是“xxxxxxx”,最终的 url 应该看起来像http://mywebsite.com/doSomething?aut..._token=xxxxxxx

我从 flashvars 中的服务器获取真实性令牌。

我有一个名为 auth_token 的用户定义画布属性,用于存储真实性令牌。

下面是我用来发出请求的 openlaszlo 代码。

var d = canvas.datasets.ds; var 内容 = get_my_content(); d.setQueryParam('lzpostbody',content); d.setQueryString({authenticity_token : encodeURIcomponent(canvas.auth_token) }); d.doRequest

在这段代码中,setQueryString 调用似乎清除了查询参数。如果我更改 setQueryString 和 setQueryParam 调用的顺序,则会发生相反的情况。

问题是。有没有办法在不更改/删除查询参数的情况下设置查询字符串。

非常感谢普内特

4

1 回答 1

1

我对 OpenLaszlo 一无所知,但我的猜测是setQueryParam添加或修改一个参数,而setQueryString用对象的内容覆盖整个查询字符串。

您不应该只添加真实性令牌吗?

d.setQueryParam('lzpostbody', content);
d.setQueryParam('authenticity_token', encodeURIcomponent(canvas.auth_token));
于 2010-09-12T01:59:38.790 回答