在POST请求中从网页URL发送令牌查询字符串参数

时间:2015-05-28 17:45:05

标签: php http post request token

我尝试发送带有部分网页网址的POST请求作为参数。例如,在这个网址中:

http://testsite.com/confirmEmail/?token=abcdefg

我希望能够使用值abcdefg发送输入标记。我想让它响应不同的令牌值。有任何想法吗? 感谢

1 个答案:

答案 0 :(得分:0)

这个答案假设他们会在这个页面上做一些动作,否则你会想要一个重定向。

<?php

$token=$_GET['token'];

?>
<form method="POST">
<input type="hidden" name="token" value="<?php echo htmlentities($token, ENT_QUOTES);?>" />
<!--other form fields and submit button here-->
</form>

更新: 这是一个简单的答案,容易理解,但当然直接从url回显一个get变量打开你到xss。有人编辑了我的答案以从该变量中删除引号,但htmlentities()也容易受到xss的攻击。我认为现在适当的功能是htmlspecialchars($token, ENT_QUOTES, "UTF-8")。如果你走这条路线,你需要注意哪种编码和您现在放入令牌的字符,因此它们不会被剥离,这可能会破坏您的验证过程。在示例中看起来像数字,所以你应该没问题。还记得有人仍然可以发布修改后的表单,因此您需要清理此令牌字段以防止注入,但希望这与此问题无关。