V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
tlerbao
V2EX  ›  程序员

“请在企业微信客户端打开链接”,能不能破!

  •  
  •   tlerbao · 308 天前 · 3974 次点击
    这是一个创建于 308 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近给企业微信开发 H5 应用,打开自动跳转企业微信 OAuth 连接授权

    但是必须在企业微信下打开,有办法用 Chrome 调试吗?

    企业微信内置的浏览器和 DevTool 太烂了。

    18 条回复    2024-02-23 13:50:05 +08:00
    iOCZS
        1
    iOCZS  
       308 天前
    应该可以通过注入来模拟微信客户端环境
    tlerbao
        2
    tlerbao  
    OP
       308 天前
    @iOCZS 测试过吗兄弟,具体怎么做呢?很难受。
    456vv
        3
    456vv  
       308 天前
    微信开发者
    totoro52
        4
    totoro52  
       308 天前
    除了 OAuth 认证,不是还有一个扫码登录吗,对接一下那个扫码登录就可以在自己浏览器上访问了,不过不走登录流程不就好了嘛, 开发不都是写死认证 token 的嘛
    ryanlid
        5
    ryanlid  
       308 天前
    是因为你的代码里,调用了微信登录之类的功能吧
    tlerbao
        6
    tlerbao  
    OP
       308 天前
    @456vv 平时都是用 vscode webstorm 。。。。 微信开发者工具可以吗?听说总卡死哈
    tlerbao
        7
    tlerbao  
    OP
       308 天前
    @totoro52 我这个 h5 是想脱离企业微信也能用,如果没有 token ,看是不是企业微信客户端访问,是的话就自动走 oauth 认证自动换 token 自动登录,非企业微信就是直接跳 login 手动登录哈
    tlerbao
        8
    tlerbao  
    OP
       308 天前
    @ryanlid 对啊
    hafuhafu
        9
    hafuhafu  
       308 天前
    开发环境下直接假装认证成功,直接用自己的 userid 就好了,不用走通过 code 换 userinfo 这个方式,因为你测试和开发环境肯定是能正常换到 userid 的。
    hafuhafu
        10
    hafuhafu  
       308 天前
    @hafuhafu 测试和开发->测试和生产
    tlerbao
        11
    tlerbao  
    OP
       308 天前
    @hafuhafu #9 这么肯定吗?
    hafuhafu
        12
    hafuhafu  
       308 天前
    @tlerbao #11 我三四年前做过企微自建应用,如果流程还没变的话,就是:用户从企业客户端工作台点应用->进到企微认证的 url->跳转到自己配置的应用回调 url 并携带 code->用 code+token 调企微 API 去换 userinfo ,一般有用的也就一个 userid 。只有在客户端里才能成功走完这个流程。你要用 chrome 来调试页面就直接跳过这个流程完事,本来也只是要个 userid 而已。
    totoro52
        13
    totoro52  
       308 天前
    @tlerbao #7 那判断下 UA 不就好了, 我们系统也是这么做的, 只是这个判断交给了 nginx 去做, 前端涉及不到
    paledream
        14
    paledream  
       308 天前
    你这是调用了企业微信 JSSDK 的授权登录 API 后重定向到了微信的页面,你把这个调用逻辑放到判断 UA 后面
    markgor
        15
    markgor  
       308 天前
    1 、先测试跳转获取授权这块有没问题,和内置浏览器或 devTool 烂不烂没任何关系,只需要测试自己授权获取代码是否有问题。
    2 、第一点自己授权这块没问题后,测试环境直接跳过授权这一块,模拟登录成功,进行业务代码调试
    3 、上面都完成了,发布去正式环境,走一次完整流程测试。


    "我这个 h5 是想脱离企业微信也能用,如果没有 token ,看是不是企业微信客户端访问,是的话就自动走 oauth 认证自动换 token 自动登录,非企业微信就是直接跳 login 手动登录哈"
    >非企微环境下,支持扫码登录;
    一般做法是登录的时候,判断 UA ,如果是企微,让用户选择登录方式,一键登录(企微)/账户登录;
    如果不是企微环境,选择扫码登录或账号登录。
    jucelin
        16
    jucelin  
       308 天前
    直接用微信开发者工具
    alleluya
        17
    alleluya  
       307 天前
    @totoro52 客户端用 ua 做判断是不是比在 ng 做少消耗服务器资源?
    totoro52
        18
    totoro52  
       306 天前
    @alleluya 前端做也行,只是你需要等 js 这些资源拉完初始完才会跳,ng 直接跳
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5643 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 03:30 · PVG 11:30 · LAX 19:30 · JFK 22:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.