0

我正在使用SFML::Network访问我的网络服务器并发送高分。高分由将它们存储在 JSON 文件中的 PHP 脚本接收:

...
$name = $_POST["n"];
$validator = $_POST["v"];
$score = $_POST["s"];
...

我目前正在从 C++ 发送一个 POST 请求,如下所示:

...
Http http; http.setHost("http://mywebsite.com");
Request request("script.php", Http::Request::Post);
request.setBody("n=" + mName + "&v=" + mValidator + "&s=" + toStr(mScore));
http.sendRequest(request);
...

这可行,但与 GET 请求具有相同的限制 - 尤其是字符限制。由于我需要验证在 LUA 中制作的自定义关卡的高分,我想将整个 LUA 文件(去除符号和空格)作为 mValidator 传递。但它不适用于 1000 个字符。小弦可以正常工作。

有人告诉我,字符限制仅存在于 GET 请求中,并且我以错误的方式调用 POST 请求。

如何在不压缩参数的情况下正确调用 POST 请求并避免字符限制?

4

1 回答 1

1

1000 个字符应该可以正常工作。检查以确保您的字符串已正确编码。内容类型x-www-form-urlencoded应该是 URL 编码的。

于 2013-03-09T17:26:12.587 回答