1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > postman解决session验证问题 试用验证码校验 带登录状态的请求

postman解决session验证问题 试用验证码校验 带登录状态的请求

时间:2021-07-20 05:41:54

相关推荐

postman解决session验证问题 试用验证码校验 带登录状态的请求

在测试后端接口时,我们经常会遇到某个接口是需要权限才能访问,如登录后才能访问,那postman如何模拟已登录的状态呢?再者,如果我们在做注册模块时,后端验证码生成并通过邮箱或短信发送给用户后,必然会将验证码存入session,这是一个接口;当用户点击注册时,我们需要验证用户输入的验证码是否正确,这是另一个接口。那如何通过postman时在测试两个接口时用的是同一个验证码?以上都是session共享问题。

我们知道,在浏览器第一次访问服务器时,服务器会创建一个新的sesion,并且把session的Id以cookie的形式发送给客户端浏览器,称为jsessionid。如图

方法一:

如果我们将jsessionid做为header的一部分,请求另一个接口时带上,那么就能使两次请求视为是同一个客户操作。在解决登陆问题时,我们可以先用postman进行登录接口的请求(或者通过浏览器请求获取),将得到的就jsessionid作为头部,就能进行其他带用户权限的接口访问了。验证码操作也是如此,本文的重点不在此,详细步骤可参见/zdj18166896501/article/details/85121211。

方法二:

我在运用方法一时,postman一直获取不到jsessionid,如图:

经过上网查找发现很有可能是cookie被禁用了。但我在返回的Headers中发现了Token参数,

一想到Token也能作为身份校验手段,(session与token区别/qq_1290259791/article/details/81193914),就抱着试试看的心态把Token放入headers中

果然,后端将两次访问识别为同一用户,成功从session中取出验证码,比对成功,

仔细看会发现,上图中的Headers不再是4个参数,而是只有3个参数,点开发现这次后端就没有再返回token了。

此时,我们可以用之前获取到的token进行多个接口的访问,均会被视为是同一用户。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。