前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >python 请在微信客户端打开_(未解决)jmeter报错之“请在微信客户端打开链接”

python 请在微信客户端打开_(未解决)jmeter报错之“请在微信客户端打开链接”

作者头像
全栈程序员站长
发布于 2022-08-15 12:23:29
发布于 2022-08-15 12:23:29
2.7K0
举报

大家好,又见面了,我是你们的朋友全栈君。

这是一个还没解决的问题,这里纯粹记录自己思考的过程,后续给自己参考。

先说明情景:对微信公众号的一个接口进行调用跑通,后续可能需要压测(是的,仅仅是调通一个接口而已o(╥﹏╥)o)

1、按照我理解的正常套路,我直接请求对应的接口,然后通过抓包得到Cookie,写入到HTTP Cookie管理器中,如下:

emmmm….开始百度,发现也有类似的提问,但是没有一个靠谱有效的答案。然后我就去分析登录过程了,看最后一个重定向的响应数据:

恩?意思就是还要用户授权,扫码然后在手机上点击【确定】,然后才能登录?于是,我去找微信授权网页开发的东西,官方文档:网站应用微信登录开发指南。

文档写的简单易懂,看完之后自己继续尝试,但是好像一直拿不到一个有效的code。

对应的开发最近又在弄双十一的需求,实在不好意思叨扰。猜测应该是我需要传某些参数,进而跳过用户授权这么一个步骤。

———————————————–分割线—————————————————–

今天开发有空,和他聊了聊,得到一些东西:首先,这个项目没有前后端分离,采用的验证是JWT做的。然后拿着我的问题去请教(其中还出现了一个情况,我加上了User-Agent,响应结果提示我在微信客户端打开链接),开发告知我扫码这个步骤是由来源控制的,如果没有来源也不是微信浏览器就会让扫码(“来源”涉及公司业务)。那么问题就又回到一个点:jmeter如何模拟微信客户端发起请求?查看微信相关的开发文档:

var ua =navigator.userAgent.toLowerCase();

var isWeixin= ua.indexOf(‘micromessenger’) != -1;

var isAndroid = ua.indexOf(‘android’) != -1;

var isIos = (ua.indexOf(‘iphone’) != -1) || (ua.indexOf(‘ipad’) != -1);

我填写的User-Agent是满足这些条件的,查看请求中也带了User-agent,那么为什么还会被服务器判定为不是微信浏览器?

技术有限,这个问题我暂时是没辙了,优先完成工作任务,我就用另一种方式去调通接口了,公司业务层面的来源控制:

JWT做的验证,我拿到了token,然后一起传进去,还是重定向到了登录页。哎,技术菜,是原罪啊,

该干活了…..

___学习是个锐化自己的过程

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/134115.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档