企业微信自建应用开发流程

news2024/11/26 0:39:43

开发需知

1、企业微信后台管理(不是小程序管理后台):企业微信

2、企业微信开发者文档(不是小程序文档):概述 - 接口文档 - 企业微信开发者中心

3、开发应用的类型:根据开发应用类型选择文档。

4、文档中有服务端API客户端API,根据需要查看对应的API说明。一般授权相关的在服务端API,相询基础信息、客户信息、联系人等在客户端API

5、开发需知:https://developer.work.weixin.qq.com/document/path/90665,https://developer.work.weixin.qq.com/document/path/91039

6、创建企业内部应用的步骤:https://developer.work.weixin.qq.com/tutorial/detail/45

构造访问链接

1、在自建应用里找到创建的应用,点击应用进入应用详情,能看到AgentId,Secret等信息。

2、设置应用主页,如下图:

 

这个主页就是我们要访问的应用首页地址。格式:https://open.weixin.qq.com/connect/oauth2/authorize?appid=CORPID&redirect_uri=REDIRECT_URI&response_type=code&scope=snsapi_base&state=STATE&agentid=AGENTID#wechat_redirect 

参数说明:

参数必须说明
appid企业的CorpID
redirect_uri授权后重定向的回调链接地址,(即我们创建的应用首页的访问地址,需用域名请使用urlencode对链接进行处理
response_type返回类型,此时固定为:code
scope应用授权作用域。 snsapi_base:静默授权,可获取成员的基础信息(UserIdDeviceId); snsapi_privateinfo:手动授权,可获取成员的详细信息,包含头像、二维码等敏感信息。
state重定向后会带上state参数,企业可以填写a-zA-Z0-9的参数值,长度不可超过128个字节
agentid应用agentid建议填上该参数(对于第三方应用和代开发自建应用,在填写该参数的情况下或者在工作台、聊天工具栏、应用会话内发起oauth2请求的场景中,会触发接口许可的自动激活)。snsapi_privateinfo时必填否则报错;
#wechat_redirect终端使用此参数判断是否需要带上身份信息

员工点击后,页面将跳转至 redirect_uri?code=CODE&state=STATE,企业可根据code参数获得员工的userid。code长度最大为512字节。

详细介绍:构造网页授权链接 - 接口文档 - 企业微信开发者中心

 

注意事项:

1、链接中appid前面是固定的,https://open.weixin.qq.com/connect/oauth2/authorize?

2、redirect_uri的值就是我们应用的访问地址,并且要用域名访问。需要转码。

3、在线转码工具:在线URL编码解码工具-UrlEncode编码-UrlDecode解码在线工具

例如,应用的主页地址为:

https://open.weixin.qq.com/connect/oauth2/authorize?appid=ww123456&redirect_uri=https://test.com.cn/#/test/index&response_type=code&scope=snsapi_privateinfo&state=wechat&agentid=10000#wechat_redirect

用上面的转码工具转码后的地址为:

https%3A%2F%2Fopen.weixin.qq.com%2Fconnect%2Foauth2%2Fauthorize%3Fappid%3Dww123456%26redirect_uri%3Dhttps%3A%2F%2Ftest.com.cn%2F%23%2Ftest%2Findex%26response_type%3Dcode%26scope%3Dsnsapi_privateinfo%26state%3Dwechat%26agentid%3D10000%23wechat_redirect

 此转码后的地址即为应用主页地址。

注意:

1、应用主页只能填写一个地址,所以为了区分测试和生产环境,要创建两个应用。两个应用有两个不同的应用id和应用secret。在注入应用权限时要区分应用id。

2、获取access_token是调用企业微信API接口的第一步,相当于创建了一个登录凭证,其它的业务API接口,都需要依赖于access_token来鉴权调用者身份。因此开发者,在使用业务接口前,要明确access_token的颁发来源,使用正确的access_token。每个应用有独立的secret,获取到的access_token只能本应用使用,所以每个应用的access_token应该分开来获取。所以要把两个应用的secret都要提供给后台(access_token是后台获取的,需要企业id和应用secret)。

 

 详细开发流程及API调用:

https://github.com/limchen233/Front-Web/blob/dev/22%20%E7%AC%AC%E4%B8%89%E6%96%B9%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91/2%E3%80%81%E4%BC%81%E4%B8%9A%E5%BE%AE%E4%BF%A1%E8%87%AA%E5%BB%BA%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%E6%B5%81%E7%A8%8B.mdicon-default.png?t=N7T8https://github.com/limchen233/Front-Web/blob/dev/22%20%E7%AC%AC%E4%B8%89%E6%96%B9%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91/2%E3%80%81%E4%BC%81%E4%B8%9A%E5%BE%AE%E4%BF%A1%E8%87%AA%E5%BB%BA%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%E6%B5%81%E7%A8%8B.md 22 第三方应用开发/2、企业微信自建应用开发流程.md · lamCheung/Front-Web - Gitee.com

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/978787.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GitHub个人访问凭证在哪看

要查看 GitHub 个人访问凭证(Personal Access Token),请按照以下步骤进行操作: 登录到你的 GitHub 帐户。点击右上角的头像,然后选择 “Settings”(设置)。在左侧导航栏中,选择 “D…

【PowerQuery】PowerQuery导入JSON数据

Json数据是目前使用的最为频繁和广泛的一种数据交换格式,JSON的全称为JavaScript Object Notation。Json 主要用于在互联网的消息的数据交换信息传递,他的格式与XML有什么区别呢?为什么不用XML,用Json有啥好处呢?我们接下来讨论下Json相比XML的优势: XML传递的数据过多服…

华为云云服务器评测|前端都会的文档预览服务

嗨大家好,我是专注前端技术,热衷知识分享的小鑫同学,近期华为云云服务器焕新上线,实付0.03元拥有了一个月的云服务器使用资格,我将利用这台服务器来演示作为前端同学如何部署一个文档预览服务,拒绝将文档解…

HashMap源码分析(JDK1.8)

概述 JDK 1.8 对 HashMap 进行了比较大的优化,底层实现由之前的 “数组链表” 改为 “数组链表红黑树”,本文就 HashMap 的几个常用的重要方法和 JDK 1.8 之前的死循环问题展开学习讨论。 JDK 1.8 的 HashMap 的数据结构如下图所示,当链表节…

从零开始学习 Java:简单易懂的入门指南之泛型及set集合(二十二)

泛型及set集合扩展 1.泛型1.1泛型概述 2.Set集合2.1Set集合概述和特点【应用】2.2Set集合的使用【应用】 3.TreeSet集合3.1TreeSet集合概述和特点【应用】3.2TreeSet集合基本使用【应用】3.3自然排序Comparable的使用【应用】3.4比较器排序Comparator的使用【应用】3.5两种比较…

【PowerQuery】Excel的PowerQuery的复制

在Excel中构建符合要求的PowerQuery连接之后,所有的PowerQuery 连接已经顺利的保存在Excel 工作簿当中,但是如何去查看已经保存的PowerQuery连接呢?图6.3 显示了查看PowerQuery连接。 Excel界面->数据页签->查询与连接 如果你的Power…

java八股文面试[数据库]——InnoDB与MyISAM的区别

InnoDB和MyISAM是使用MySQL时最常用的两种引擎类型,我们重点来看下两者区别。 事务和外键 InnoDB支持事务和外键,支持回滚,具有安全性和完整性,适合大量insert或update操作 MyISAM不支持事务和外键,它提供高速存储和…

mysql表中删除重复记录,只保留一条记录的操作

mysql表中两个字段重复记录,只保留一条记录的操作 例如有一张学生表 其中name 和 class 相同的视为重复记录,需要保留一条记录,删除重复记录, 两种操作方式如下: 方法一: group by SELECT MIN(cs.id) AS id ,cs.name…

东南亚时尚用品电商平台ZALORA,用自养号测评快速提升产品的评论和销量

关注东南亚电商市场的人都听说过Lazada、Shopee等电商巨头,但很少有人知道ZALORA。实际上,每当提到东南亚的电商平台时,ZALORA都是一个不可忽视的话题。尽管电商巨头SheIn在印尼市场的表现不如本土时尚电商ZALORA。 ZALORA是由德国的创业加速…

分布式实时仿真系统-反射内存的应用

为了使分布式实时仿真系统(一个典型代表就行飞行模拟器)达到逼真的仿真效果,在系统内部,往往不仅需要对各种数据模型进行实时解算,而且需要一个延迟时间极低的确定性网络在系统之间传递数据,这样才能让各个子系统之间协调一致地工…

一文速学-让神经网络不再神秘,一天速学神经网络基础(七)-基于误差的反向传播

前言 思索了很久到底要不要出深度学习内容,毕竟在数学建模专栏里边的机器学习内容还有一大半算法没有更新,很多坑都没有填满,而且现在深度学习的文章和学习课程都十分的多,我考虑了很久决定还是得出神经网络系列文章,…

通过 SQL 实现海量 GIS 数据的轨迹关联计算,确定不了解下?

作者:于成铭 | YMatrix 解决方案与架构总监 前言 统计与分析轨迹和地理区域的关联问题,是 GIS 主要的应用类别之一。最早的 GIS 应用以桌面应用程序为主,但随着需处理应用越来越复杂,GIS 的开发框架也在逐年演进。就像复杂的数据…

adb-linux 调试桥

这里写自定义目录标题 摘要:一、简介二、adb使用参考连接 摘要: adb 可替代网络、串口等调试手段,可以方便的进行文件传输、终端登录等 一、简介 ADB的全称为Android Debug Bridge,即调试桥,方便调试设备或调试开发…

(值得收藏)境外投资备案申请指南

随着全球化的不断深入,越来越多的企业开始寻求境外投资的机会。然而,在进行境外投资前,需要进行备案手续,以确保投资的合法性和可行性。 境外投资备案条件: 具有完全民事行为能力的法人或自然人。拥有足够的资金和实力…

CK_Label-V23(Battery)System Developer‘s Manual

Query PTL Tags Information Introduction to the API: Query all PTL tags information Basic Information: Attributes 接口信息 Status Finished URL http://localhost/wms/associate/getTagsMsg Request Method GET/POST Content-Type …

Shader变体自定义组合压缩方案

前言 本篇文章不讲什么是变体,不讲shader_feature和multi_compile的区别,也不讲如何收集变体。 关于什么是变体,如何优化变体,看这篇文章 Shader:优化破解变体的“影分身”之术 - 知乎 (zhihu.com) 关于变体的收集…

自然语言处理历史史诗:NLP的范式演变与Python全实现

目录 一、引言什么是自然语言处理?语言与人类思维自然语言的复杂性NLP的历史轨迹 二、20世纪50年代末到60年代的初创期符号学派重要的研究和突破 随机学派重要的研究和突破 三、20世纪70年代到80年代的理性主义时代基于逻辑的范式重要的研究和突破 基于规则的范式重…

亚马逊云科技数据分析为这伴科技赋能,实现“零”中断目标

当前,利用数据分析能力赋能精准营销逐渐成为全球企业的主流趋势之一,然而复杂的基础设施和运维压力也不容忽视,因此如何才能构建行之有效的数据分析平台,支撑业务营销服务,实现与客户的共创互赢? 数字营销时…

Spring MVC入门必读:注解、参数传递、返回值和页面跳转的关键步骤

目录 引言 一、常用注解 1.1.RequestMapping 1.2.RequestParam 1.3.RequestBody 1.4.RequestHeader 1.5.PathVariable 二、参数传递 2.1.基础类型String 2.2.复杂类型 2.3.RequestParam 2.4.PathVariable 2.5.RequestBody 2.6.RequestHeader 三、返回值 3.1.vo…

jdk软件安装包分享(附安装教程)

目录 一、软件简介 二、软件下载 一、软件简介 JDK(Java Development Kit)是Java开发工具包的缩写,是Java开发人员必备的软件。它提供了一系列的工具和库,用于开发、编译、调试和运行Java应用程序。 JDK的主要组成部分包括&#…