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();

... パラメータは本文と URL で送信されます。パラメータが大きくなると破損する可能性があるため、これは問題です。セキュリティ上の理由から、すべてのパラメータがログファイルに表示されるわけではありません。私は何か間違ったことをしていますか、それともこれはバグですか? 私の回避策は、自分でパラメーターを連結してuriencodeし、req.setData(data)を使用して本体に入れることです。

4

2 に答える 2

4

.setParameterオプションの 3 番目の引数があります。に設定するtrueと、リクエストのパラメータは URL ではなくデータ セクションに入ります。API ドキュメントを参照してください。

于 2010-03-25T22:24:54.940 に答える
0

setParameter-method については、http: //demo.qooxdoo.org/current/apiviewer/#qx.io.remote.Requestのドキュメントを参照してください。

setParameter(String vId, var vValue, (Boolean | false) bAsData) には、オプションの 3 番目のパラメータ bAsData があります

false の場合、パラメーターを URL に追加します。true の場合、代わりに、このメソッドの呼び出しによって追加されたパラメーターが、要求データとして追加された文字列に結合されます。これは、パラメーターのセット全体が事前に構築されて setData() に渡されたかのように行われます。

したがって、値が true の 3 番目のパラメーターを req.setParameter に追加すると、うまくいくはずです。

于 2010-03-25T22:34:09.863 に答える