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

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

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;

当用户在非企业微信中打开时,将提示:
unigui同页面内重定向跳转,企业微信内部应用开发获取用户code例子_第2张图片

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

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

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

你可能感兴趣的:(运维技术,前端)