企业微信 API 接口调用教程:深入解析企业微信 API 的用法

news2024/11/19 8:48:30

本文通过 access_token 凭证的方式来讲解怎么调用 企业微信 API,并一步步介绍如何获取企业微信 API 的 corpsecretcorpid、access_token 凭证以及怎么向企业微信的应用发送消息。 企业微信 API 在线地址为:qiyeweixin.apifox.cn/ ,这个在线地址的项目你可以克隆到 Apifox,以方便调试。话不多说,下面进入实操。

企业微信添加自建应用

  1. 如果你是企业微信的企业管理员,点击 “管理企业” 进入企业微信后台(不同版本可能不一样)

  1. 然后在 “应用管理” 下方,选择 “创建应用”

  1. 填写应用相关信息

  1. 创建成功后,即可看到 Secret 的信息,这个 Secret 就是等会儿要用的 corpsecret。

  1. 获取 corpid, 点击 “我的企业” 即可看到企业 ID ,这个企业 ID 就是 corpid

企业微信获取 access_token 凭证

为方便企业微信 API 的调试,下面使用 Apifox  获取 access_token 凭证。企业微信API 的 access_token 是应用调用 api 的凭证,由 corpid 和 corpsecret 换取。

请求方式: GET(HTTPS

请求 URL: qyapi.weixin.qq.com/cgi-bin/get…

使用 Apifox 发送 GET 请求即可得到 access_token(请把截图中的 corpid、corpsecret 换为自己的 corpid(企业 ID)、应用 secret)。企业微信 API 在线地址为:qiyeweixin.apifox.cn/ ,这个在线地址的项目你可以克隆到 Apifox,以方便调试。

企业微信发送应用消息

企业微信的应用支持推送文本、图片、视频、文件、图文等类型。

请求方式: POST(HTTPS

请求地址: qyapi.weixin.qq.com/cgi-bin/mes…

企业微信的 touser

获取 touser,通讯录列表的成员账号就是 touser。

企业微信的 agentid

每个应用都有唯一的 agentid。在“管理后台”->“应用管理”->“应用”,点进某个应用,即可看到 agentid。

构造消息体

可以发送文本、图片、视频等多种类型的应用消息,这里以最简单的文本消息为例:(注意修改 touser、agentid 为自己想要的接收者 userid 列表、应用 id)

{
   "touser" : "abelzhu|ZhuShengben",
   "msgtype" : "text",
   "agentid" : 1000002,
   "text" : {
       "content" : "我就试一下"
   },
   "safe":0
}

发送消息

如下图示,有了 access_tokentouser、agentid消息体,在 Apifox 中发送 post 请求即可(红色箭头所指为需要注意的点)

如果报错返回"errcode": 60020,那么你需要配置可信任域名。在“应用管理”->“企业可信 IP”下配置即可。这里需要你下载WW_verify_7x7IN1QfqcsOLA6J.txt文件,并将其放到域名的根目录下,然后验证。

响应成功

如下图所示,在企业微信里,成功响应了消息回来。

使用 Apifox 调试、管理接口

Apifox 是一个比 Postman 更强大的接口测试工具,Apifox = Postman + Swagger + Mock + JMeter,Apifox 支持调试 http (s)、WebSocket、Socket、gRPC、Dubbo 等协议的接口,并且集成了 IDEA 插件。在开发完接口后,可以通过 Apifox 的 IDEA 插件一键生成接口文档,多端同步,非常方便测试和维护。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 

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

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

相关文章

STL:List从0到1

🎉个人名片: 🐼作者简介:一名乐于分享在学习道路上收获的大二在校生 🙈个人主页🎉:GOTXX 🐼个人WeChat:ILXOXVJE 🐼本文由GOTXX原创,首发CSDN&…

IO流(5)——转换流

不同编码读取出现乱码的问题 解决方法 字符输入转换流(InputStreamReader)

pytorch 入门基础知识(Pytorch 01)

一 深度学习基础相关 深度学习三个主要的方向:计算机视觉,自然语言,语音识别。 机器学习核心组件:1 数据集(data),2 前向传播的model(net),3 目标函数(loss), 4 调整模型参数和优化函数的算法…

【Linux-网络编程】

Linux-网络编程 ■ 网络结构■ C/S结构■ B/S结构 ■ 网络模型■ OSI七层模型■ TCP/IP四层模型 ■ TCP■ TCP通信流程■ TCP三次握手■ TCP四次挥手 ■ 套接字:socket 主机IP 主机上的进程(端口号)■ TCP传输文件 ■ 网络结构 ■ C/S结构…

Java学习记录(二十二)反射,动态代理

反射获取class对象的三种方式 1、Class.forName(全类名) 2、类名.class 3、对象.getClass() 实现代码如下: package com.itazhang.Demo1;public class MyReflectDemo1 {public static void main(String[] args) throws ClassNotFoundException {//第一种获取cl…

Nacos源码流程图

1.Nacos1.x版本服务注册与发现源码 流程图地址:https://www.processon.com/view/link/634695eb260d7157a7bc6adb 2.Nacos2.x版本服务注册与发现源码 流程图地址:https://www.processon.com/view/link/634695fb260d7157a7bc6ae0 3.Nacos2.x版本GRPC…

【Linux进程信号】信号的发送与保存

【Linux进程信号】信号的发送与保存 目录 【Linux进程信号】信号的发送与保存阻塞信号1. 信号其他相关常见概念2. 在内核中的表示3. sigset_t4. 信号集操作函数sigprocmasksigpendingsignal测试这几个系统调用接口 进程地址空间第三讲捕捉信号1. 内核如何实现信号的捕捉2. siga…

Jenkins 面试题及答案整理,最新面试题

Jenkins中如何实现持续集成与持续部署? Jenkins通过自动化构建、测试和部署应用程序来实现持续集成与持续部署(CI/CD)。这个过程包括以下步骤: 1、源代码管理: Jenkins支持与多种版本控制系统集成,如Git、…

Java项目:55 springboot基于SpringBoot的在线视频教育平台的设计与实现015

作者主页:舒克日记 简介:Java领域优质创作者、Java项目、学习资料、技术互助 文中获取源码 项目介绍 在线视频教育平台分为管理员和用户、教师三个角色的权限模块。 管理员所能使用的功能主要有:首页、个人中心、用户管理、教师管理、课程信…

绝赞春招拯救计划 -- 操作系统,组成原理,计网

进程和线程 进程 一个在内存中运行的应用程序。每个进程都有自己独立的一块内存空间,一个进程可以有多个线程 线程 进程中的一个执行任务(控制单元),负责当前进程中程序的执行。一个进程至少有一个线程,一个进程可以…

关于Apache

文章目录 一、httpd 安装组成1、常见http 服务器程序2、apache 介绍和特点2.1 关于apache2.1.1 apache 功能2.1.2 apache特性 2.2 MPM multi-processing module 工作模式2.2.1 prefork2.2.2 worker2.2.3 event 3、Httpd 安装和相关文件3.1 包安装httpd并启动httpd服务3.1.1 版本…

配置vscode环境极简版(C/C++)(图文)

前言 众所周知,vscode是一个代码编辑器,不能直接编译运行我们敲的代码,必须提前配置好环境,而这也是劝退一众小白的一大重要因素,下面我想以一种提纲挈领的方式带大家走一遍从配置环境到运行实操代码的全过程。 安装…

用户故事到需求实例化

用户故事 用户故事是敏捷开发方法中的核心概念之一,它提供了一种简洁的方式来描述软件功能需求,同时强调这些功能为用户或业务带来的价值。用户故事通常是由用户、产品经理或业务分析师编写的简短描述,用于与开发团队沟通需求,并…

面向对象(下)

目录 01、static1.1、static的使用1.2、static应用举例1.3、单例(Singleton)设计模式 02、main方法的语法03、类的成员之四:代码块04、关键字:final05、抽象类与抽象方法5.1、多态的应用:模板方法设计模式(TemplateMethod) 06、接口(interfac…

flink1.18.0 自定义函数 接收row类型的参数

比如sql中某字段类型 array<row<f1 string,f2 string,f3 string,f4 bigint>> 现在需要编写 tableFunction 需要接受的参数如上 解决方案 用户定义函数|阿帕奇弗林克 --- User-defined Functions | Apache Flink

C语言数据结构(7)——树、二叉树前言

欢迎来到博主的专栏——C语言数据结构 博主ID&#xff1a;代码小豪 文章目录 树二叉树特殊二叉树满二叉树完全二叉树 完全二叉树的存储结构 树 树是一个非线性的数据结构&#xff0c;由N个结点构成的集合。 树的各个结点由一个根结点联系起来&#xff0c;这个根节点没有前驱…

小球垂直跳动,C语言模拟重力加速度

位移公式 1、速度和时间关系&#xff1a; 2、位移和时间关系&#xff1a; 3、力和加速度关系&#xff1a; 4、空气阻力&#xff1a; 受理分析 以向下运动为正方向 1、向下运动整体受力&#xff0c;重力加空气阻力: 2、向上运动整理受力&#xff0c;重力减空气阻力&…

Apache zookeeper kafka 开启SASL安全认证

背景&#xff1a;我之前安装的kafka没有开启安全鉴权&#xff0c;在没有任何凭证的情况下都可以访问kafka。搜了一圈资料&#xff0c;发现有关于sasl、acl相关的&#xff0c;准备试试。 简介 Kafka是一个高吞吐量、分布式的发布-订阅消息系统。Kafka核心模块使用Scala语言开发…

MySQL基础架构

文章目录 MySQL基础架构一、连接器 - 建立连接&#xff0c;权限认证二、查缓存 - 提高效率三、分析器 - 做什么四、优化器 - 怎么做五、执行器 - 执行语句六、存储引擎1、存储引擎的概述2、存储引擎的对比3、存储引擎的命令4、存储引擎的选择 MySQL基础架构 大体来说&#xff…

力扣-20. 有效的括号(回顾知识哈希表,栈)

给定一个只包括 ‘(’&#xff0c;‘)’&#xff0c;‘{’&#xff0c;‘}’&#xff0c;‘[’&#xff0c;‘]’ 的字符串 s &#xff0c;判断字符串是否有效。 有效字符串需满足&#xff1a; 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 每个右括号都有…