qx.io.remote.Request:在body和url中发布参数

时间:2010-03-25 15:38:12

标签: javascript post request qooxdoo

创建和发送这样的http POST请求时......

        var req = new qx.io.remote.Request("/test","POST");
        req.setParameter("pi", "3.1415");
        req.setParameter("color", "red");
        req.setParameter("password", "mySecretPassword");
        req.send();

...参数在身体和网址中发送。这是一个问题,因为当变大时参数可能会中断,并且出于安全原因,所有参数都不能显示在日志文件中。我做错了什么,或者这是一个错误?我的解决方法是自己连接和uriencode参数,并使用req.setData(data)将它们放在正文中。

2 个答案:

答案 0 :(得分:4)

.setParameter有一个可选的第三个参数。如果设置为true,请求的参数将进入数据部分而不是URL;请参阅API doc

答案 1 :(得分:0)

请查看http://demo.qooxdoo.org/current/apiviewer/#qx.io.remote.Request处的文档,了解setParameter-method。

setParameter(String vId,var vValue,(Boolean | false)bAsData)有一个可选的第三个参数bAsData

  

如果为false,请将参数添加到   URL。如果是真的那么相反   通过调用添加的参数   方法将组合成一个字符串   添加为请求数据,就好像是   已经有了整套参数   预构建并传递给setData()。

因此,为req.setParameter添加值为true的第三个参数应该可以解决问题。