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中进行直接读取。

相关推荐
777VG2 小时前
PostgreSQL +martin将多张表输出成一个 MVT
前端·数据库·postgresql
mayaairi2 小时前
JS循环语句深度解析:嵌套for、while与do...while
开发语言·前端·javascript
To_OC2 小时前
啃完流式输出:从一个卡顿的 LLM 接口开始,我搞懂了数据流到底怎么 “流”
前端·javascript·llm
阳光是sunny3 小时前
LangGraph实战教程:defer延迟节点——让收尾工作自动排到最后
前端·人工智能·后端
kyriewen3 小时前
我用了三周Claude Code Skills——总结出5条铁律,第3条最反直觉
前端·ai编程·claude
阳光是sunny3 小时前
LangGraph实战教程:控制流详解
前端·人工智能·后端
格尔曼Noah4 小时前
Safari浏览器中如何只允许指定网站下载
前端·safari
用户059540174464 小时前
用了3年Redis,才发现我一直没搞懂缓存一致性测试
前端·css
swipe5 小时前
07|(前端转后全栈)为什么后端也要缓存?从前端缓存思维理解 Redis
前端·后端·全栈
IT小盘5 小时前
05-企业项目统一接入多个大模型-适配器模式实战
前端·人工智能·适配器模式