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

相关推荐
38242782734 分钟前
python:输出JSON
前端·python·json
2503_9284115639 分钟前
12.22 wxml语法
开发语言·前端·javascript
光影少年1 小时前
Vue2 Diff和Vue 3 Diff实现及底层原理
前端·javascript·vue.js
傻啦嘿哟1 小时前
隧道代理“请求监控”实战:动态调整采集策略的完整指南
前端·javascript·vue.js
JIngJaneIL1 小时前
基于java + vue个人博客系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
C_心欲无痕1 小时前
vue3 - readonly创建只读的响应式对象
前端·javascript·vue.js
Rabi'1 小时前
编译ATK源码
前端·webpack·node.js
SoaringHeart2 小时前
Flutter组件封装:视频播放组件全局封装
前端·flutter
离&染3 小时前
vue.js2.x + elementui2.15.6实现el-select滚动条加载数据
前端·javascript·vue.js·el-select滚动加载
inferno3 小时前
HTML基础(第一部分)
前端·html