unigui同页面内重定向跳转,企业微信内部应用开发获取用户code例子

Delphi 复制代码
procedure TMainForm.UniFormCreate(Sender: TObject);
var
  url: string;
  code: string;
begin
//如果没有code值,将进行重定向
  if UniApplication.Parameters.Values['code'] = '' then
  begin
    url :=
      'https://open.weixin.qq.com/connect/oauth2/authorize?appid=你们的企业ID&redirect_uri=' +
      '这里放原网站原域名地址,需要和企业微信应用中的可信域名一致&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect ';
    unisession.addjs('window.location.href="' + url + '";')
  end
  else
  begin
//读取到code,也就是可以进一步解析到用户的信息了
    ShowMessage(UniApplication.Parameters.Values['code']);
  end;
end;

当用户在非企业微信中打开时,将提示:

企业微信中打开会获取到code的代码

后续逻辑就根据自己的应用场景进行操作,可以通过code发送给后端认证服务,之后返回用户的基础信息,也可以直接在unigui中进行直接读取。

相关推荐
掘金酱7 小时前
【10.24 特别活动】AI 时代,程序员的新饭碗在哪里?
前端·人工智能·后端
excel7 小时前
多进程环境下使用 PM2 部署 Socket.IO:需要注意什么
前端
IT_陈寒7 小时前
Redis的原子性竟然失效了?记一次分布式锁翻车实录
前端·人工智能·后端
时间的情敌9 小时前
《回顾 2018 前端:Vue2 成熟期,Webpack4 发布,PWA 大火》
前端
Java后端的Ai之路9 小时前
前端技术Vue-09-webpack-vuejs-实战
前端·vue.js·webpack
LMT流氓兔9 小时前
第五单元——第4课:给工具参数加校验
java·前端·算法·ai·langchain
涛涛ing9 小时前
React Compiler正式“Rust化”:你项目里的Babel插件,正在被编译进打包器
前端
迷迭绿10 小时前
Cesium 轨迹回放播放器
前端·javascript·cesium
HolySaga10 小时前
我用 UTS 写了一个三端同构的蓝牙插件(Android / iOS / 鸿蒙 NEXT),把踩过的坑都讲给你听
前端
程序员老赵10 小时前
Docker 部署 XWiki:轻松搭建企业知识库与协作 Wiki
前端·docker·开源