• 请不要在回答技术问题时复制粘贴 AI 生成的内容
tlerbao
V2EX  ›  程序员

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

  •  
  •   tlerbao · Feb 21, 2024 · 5642 views
    This topic created in 835 days ago, the information mentioned may be changed or developed.

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

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

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

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


    "我这个 h5 是想脱离企业微信也能用,如果没有 token ,看是不是企业微信客户端访问,是的话就自动走 oauth 认证自动换 token 自动登录,非企业微信就是直接跳 login 手动登录哈"
    >非企微环境下,支持扫码登录;
    一般做法是登录的时候,判断 UA ,如果是企微,让用户选择登录方式,一键登录(企微)/账户登录;
    如果不是企微环境,选择扫码登录或账号登录。
    jucelin
        16
    jucelin  
       Feb 22, 2024
    直接用微信开发者工具
    alleluya
        17
    alleluya  
       Feb 23, 2024
    @totoro52 客户端用 ua 做判断是不是比在 ng 做少消耗服务器资源?
    MIUIOS
        18
    MIUIOS  
       Feb 23, 2024
    @alleluya 前端做也行,只是你需要等 js 这些资源拉完初始完才会跳,ng 直接跳
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2583 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 45ms · UTC 10:51 · PVG 18:51 · LAX 03:51 · JFK 06:51
    ♥ Do have faith in what you're doing.