最近做了一个系统,其中有一步要对请求的输入流进行hmac-sha1校验,在windowServer上全部校验通过,在CentOS上偶尔会校验不通过。
步骤:利用BufferedInputStream读取请求输入流,转成字符串,然后用hmac-sha1算法算出一个值,检查是否与传过来的sign值一样
java的request.getInputStream()在不同的系统会拿到不一样的内容吗?
答案:1 悬赏:0
解决时间 2021-02-17 08:05
- 提问者网友:王者刀枪不入
- 2021-02-17 01:23
最佳答案
- 二级知识专家网友:余生继续浪
- 2021-02-17 01:48
获取以表单提交的post类型的值,
也就是获取
<form method="post">这种方式提交的值
request包含各种方式的值,没有指名是什麽,所以
Request.Form() Request.QueryString()等都包含在裏面,但是它们之间有个优先级问题,比如
<form method="post" action="xxx.aspx?id=2">
<input id="id" type="text" name="id">
</form>
当我们提交这个表单时同时传递了两个id值,一个是form裏input 的id它以post方式提交,而另一个是action裏的url传递了一个以get方式提交的id
那麽我们如果用Request("id")得到的是哪一个值?就得据其优先级才知道,一般应该是get比post优先级高些,
但是,如果我用Request.Form("id")一定得到的是以post提交的input裏输入的值,而用Request.QueryString("id")得到的一定是以get方式提交的值,所以我建议养成好习惯都写全,不要都用Request(),除非我们能够确认只有一个不会有重复,
其实除了上面的两种Request还能得到很多的东西.
也就是获取
<form method="post">这种方式提交的值
request包含各种方式的值,没有指名是什麽,所以
Request.Form() Request.QueryString()等都包含在裏面,但是它们之间有个优先级问题,比如
<form method="post" action="xxx.aspx?id=2">
<input id="id" type="text" name="id">
</form>
当我们提交这个表单时同时传递了两个id值,一个是form裏input 的id它以post方式提交,而另一个是action裏的url传递了一个以get方式提交的id
那麽我们如果用Request("id")得到的是哪一个值?就得据其优先级才知道,一般应该是get比post优先级高些,
但是,如果我用Request.Form("id")一定得到的是以post提交的input裏输入的值,而用Request.QueryString("id")得到的一定是以get方式提交的值,所以我建议养成好习惯都写全,不要都用Request(),除非我们能够确认只有一个不会有重复,
其实除了上面的两种Request还能得到很多的东西.
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯