0

在创建和发送这样的 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();

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

4

2 回答 2

4

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

于 2010-03-25T22:24:54.940 回答
0

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

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

如果为 false,则将参数添加到 URL。如果为 true,则通过调用此方法添加的参数将组合成作为请求数据添加的字符串,就好像整个参数集已预先构建并传递给 setData()。

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

于 2010-03-25T22:34:09.863 回答