【发布时间】:2011-08-04 01:44:53
【问题描述】:
到目前为止我一直在使用:
xmlhttp.open("GET","server_script.php?q="+str,true);
谢谢
编辑: 我正在为可能遇到此页面的任何人提供一个解决方案,以演示如何使用 POST 而不是 GET。如果您是 AJAX 新手,我会推荐本教程 http://www.w3schools.com/PHP/php_ajax_php.asp 首先使用 GET 方法。
解决方案-
javascript:
xmlhttp.open("POST","script.php",true);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.send('var_name='+str);
php:
$var_name = GET['var_name'];
echo $var_name;
有关使用 POST 和 GET 的原因 - 请参阅 cmets blow。
【问题讨论】:
-
POST 并不比 GET 更“安全”(除了可能不会在历史上留下痕迹)。
-
POST 应该优先用于更改服务器上某些状态的查询。如果您正在执行只读查询(如
q=所示),那么 GET 非常好。 (推测的安全问题涉及 CSRF,对此使用 POST 帮助不大。)
标签: php javascript html ajax