API-登录接口无法访问成功的解决方案

这篇具有很好参考价值的文章主要介绍了API-登录接口无法访问成功的解决方案。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

近期有朋友问一个关于登录接口的问题,场景如下:

有个项目必须使用VPN才能访问,需要做API接口方面测试,需要使用JMeter或Postman类的HTTP请求工具来实现端口的访问,实际操作中发现:登录接口是Form表单形式,需要传递用户名、密码、验证码、ID,共4项参数,理论上发送接口请求后应该返回登录成功后自动跳转的页面,但实际返回的是登录页,并没有完成跳转,但status code(响应状态码)却返回的是200,说明请求通了,尝试了N种做法仍然无法解决问题。接下来我分享一下我排查这个问题的主要思路。

**********排查过程**********

1、因为是通过VPN访问的项目,所以开始怀疑是VPN的问题导致的,故而开始查找VPN限制的是什么端口,怕是postman类的工具用的主要端口被VPN屏蔽,查了一大圈后发现不是VPN的问题,且这个事和VPN没有任何关系。

2、使用Fiddler抓包工具进行抓取(因为没有API文档只能自己抓),发现前台的数据包基本都可以抓到,于是抓了一个项目中的其它接口尝试用postman去请求,结果很惊人:另一个接口,成功的返回了应该返回的数据,这更进一步证实了postman是可以正常对接口进行请求的,并非VPN做了限制。

3、使用fiddler抓取登录接口,发现点完登录按钮之后出现了两次重定向(304)于是怀疑是不是在重定向过程中发生了什么问题而导致无法跳转到新的页面,于是我查看了浏览器的代理设置,甚至通过查询BD去修改了postman本身关于代理方面的设置,结果还是一样,未解决问题

4、怀疑是否是有必填参数没填导致(以以往的工作经验来讲,登录请求一般都会携带一个token来验证身份等信息)但抓包时并未发现有token信息,只发现了cookie,于是我手动把cookie放在了请求头中去请求,结果还是未解决问题,并且还发现cookie其实已经自动被postman补上了,程序用的是session

5、怀疑是请求类型传错了,所以又反复抓包确认了确实是form表单类型,但我依然尝试了把参数写在json里以请求体的形式传递了出去,结果还是没解决问题

6、怀疑是content-type的值传错了,经过反复核对,application的value是没有问题的,网上说的很多解决方案并不适用于我目前的情况

7、怀疑是登录接口和其它接口有后端代码的逻辑关联,于是我又重新对登录接口抓包,发现在登录时还有另一个接口也发送了请求,是verify接口(验证码)接口,我迫不及待的去postman中对verify接口发送请求,请求成功后发现只返回了一张Image图片,其它的信息并没有看到,但总感觉两个接口之间有关联,于是又无意识的点了一下登录接口,神奇的事情发生了!登录接口成功访问到了登陆之后的页面,重定向的页面也自动执行了,至此,豁然开朗,问题解决!


*********现象分析*********

原因:经过排查发现返回登录页并不是因为参数传递错误,反而是页面访问成功后才会展示那个页面[status code : 200](至于返回的页面里没有展示密码和验证码是UI渲染的问题与接口无关)根本原因是在于后台的登陆逻辑,虽然验证码在项目中暂时被写死,但仍需先获取验证码再提交登录的form表单 


 *********解决方案*********

第一步:访问验证码接口

第二步:在验证码没过期之前,访问登录接口(前提是参数都传对了)

配图(图中接口信息涉密,故打了马赛克):

api接口连接不上,软件测试 & 开发,postman,测试工具,登录接口,login

api接口连接不上,软件测试 & 开发,postman,测试工具,登录接口,login

至此,问题解决,既是对自己的一次复盘,也同样借此机会分享给遇到同样问题的朋友们,希望可以让遇到同样问题的朋友少走弯路。


❤关注我,不迷路❤

******我的本文相关专栏******

软件测试 & 开发(单击此处进入)


 ******我的其它作品专栏******

PC常见故障汇总专栏(点击进入)

EXCEL综合场景应用详解(点击此处进入)

全国计算机等级考试-二级python基础(点击此处进入)

 文章来源地址https://www.toymoban.com/news/detail-580014.html

到了这里,关于API-登录接口无法访问成功的解决方案的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 无法访问Github解决方案

    1、找到hosts 文件 hosts 文件在每个系统的位置不一,详情如下: Windows 系统:C:WindowsSystem32driversetchosts Linux 系统:/etc/hosts Mac(苹果电脑)系统:/etc/hosts Android(安卓)系统:/system/etc/hosts iPhone(iOS)系统:/etc/hosts 2、打开hosts文件 Windows 使用记事本。 Linux、Mac 使用 Root 权

    2024年02月01日
    浏览(57)
  • win11 无法登录微软账户 终极解决方案

    背景:win11突然无法登录微软账户,office无法激活,Edge里的微软账户也无法登录,反馈中心也无法打开等,有网络,浏览器可以访问微软并进行登录。 试过网上的网络配置(SSL及TLS协议勾选)、DNS配置、网络重置等各项办法均无法。 通过抓包工具发现登录请求应该是指向h

    2024年02月10日
    浏览(41)
  • Microsoft 365 - Teams无法登录的解决方案

    在使用Teams时候,登录遇到下面错误 \\\"We\\\'re sorry - we\\\'ve run into an issue.\\\"   经过排查,可以通过下面方式解决: 1. 在上面错误弹框中点击Signing out退出登录; 2. 到路径”C:Users username AppDataRoamingMicrosoftTeams“下删除所有folder/file 3. 打开注册表,在路径”ComputerHKEY_LOCAL_MACHINESO

    2024年02月11日
    浏览(34)
  • 外部无法访问ES的解决方案

    外部无法访问ES的解决方案: 打开Elasticsearch安装路径下config目录下的elasticsearch.yml文件,加入如下配置: discovery.seed_hosts: [\\\"host1\\\"] network.host: 0.0.0.0   重新启动ES即可。 PS:如果修改配置文件后,启动报错 max file descriptors [4096] for elasticsearch process is too low, increase to at least [6553

    2024年02月12日
    浏览(45)
  • 【Windows】Windows10 无法登录 Microsoft 账户的解决方案

    本文记录 Windows10 无法登录 Microsoft 账户的解决方案. 在新安装的 Win10 上登录 Microsoft 账户,等待很长一段时间后,显示“发生了错误”. 进入 控制面板 = Internet 选项 ,点击 高级 选项卡,勾选下图红色方框中的选项,然后重启即可.           重新启动后进入系统,就可以登

    2024年02月11日
    浏览(50)
  • ArcGIS Server无法启动及服务无法访问的案例和解决方案

    问题描述         在服务器读取磁盘异常的情况下,发布了一个新服务,此时出现服务无法访问的情况。         重启Server服务后,发现Server无法启动,重启服务器机器后无法解决此问题,依旧无法启动,且Server日志文件里出现以下信息。  问题原因及解决方案    

    2024年02月08日
    浏览(63)
  • ipv6 ping无法访问目标主机解决方案

    很有可能是路由器没有默认的ipv6路由,需要在路由器上添加默认路由。 使用ssh登陆路由器后,执行 ip -6 route 。 找到default from这条路由,记住它的网关和接口。我这里的网关是 fe80::200:5eff:fe00:101 ,接口为 wan 。 使用下面这条命令添加默认网关。 如果是旁路由的话,就没有

    2024年02月22日
    浏览(32)
  • 构建未来的数字世界:创新开放API接口认证解决方案

    目录 1、引言 1.1 数字世界的发展 1.2 API接口的重要性 1.3 API接口认证的挑战 2、现有的API接口认证解决方案 2.1 基于令牌的认证方法 2.2 OAuth认证 2.3 OpenID认证 2.4 API密钥认证 3、创新开放API接口认证解决方案 3.1 双因素认证 3.2 生物特征认证 3.3 区块链认证 3.4 基于智能合约的认证

    2024年01月25日
    浏览(43)
  • uniapp 微信小程序最新隐私弹窗更新方案,更新后无法登录问题解决方案

    uni-popup ref=\\\"popusAuthorization\\\" type=\\\"center\\\" :maskClick=\\\"false\\\" view class=\\\"contentview\\\" view class=\\\"title\\\"隐私保护指引/view view class=\\\"des\\\" @click=\\\"openPrivacyContract\\\" 在使用当前小程序服务之前,请仔细阅读text style=\\\"color: #07c160;\\\"{{privacyContractName}}/text。如你同意{{privacyContractName}},请点击“同意”开始使

    2024年02月09日
    浏览(31)
  • 网站打不开域名无法访问是怎么回事?(网页无法访问域名被封暂停解析的解决方案)

    文章来源:三一博客 首发地址:网站打不开域名无法访问是怎么回事?(网页无法访问域名被封暂停解析的解决方案) - 知识库 - 0oD三一o0博客 近来三一遇到一个比较头疼的问题,日常更新博客网站(www.o0310o.com)的时候会遇到时而打不开网站,提示“域名解析错误请检查域

    2024年01月20日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包