您的位置:

企微接口文档详解

一、接口简要介绍

企微接口文档是企业微信提供给开发者使用的API接口文档。其主要功能包括:发送应用消息、上传临时素材、获取应用可见范围等。企微接口文档支持RESTful和Websoket两种协议,能够满足大部分的业务需求。下面我们来介绍一下企微接口文档的使用方法。

二、使用流程

企微接口文档的使用流程如下:

1、创建应用,获取应用ID和应用密钥。

/**
* 应用ID
* @type {string}
*/
const appid = 'xxxxxxxxxxxxxxxxx';
/**
* 应用密钥
* @type {string}
*/
const appsecret = 'xxxxxxxxxxxxxxxxx';

2、获取access_token。

/**
* 获取access_token
* @param {string} appid - 应用ID
* @param {string} appsecret - 应用密钥
* @returns {Promise} access_token
*/
async function getAccessToken(appid, appsecret) {
  const url = `https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=${appid}&corpsecret=${appsecret}`;
  const response = await fetch(url);
  const result = await response.json();
  return result.access_token;
}

   

3、发送消息。

/**
* 发送消息
* @param {string} access_token - access_token
* @param {object} message - 消息体
*/
async function sendMessage(access_token, message) {
  const url = `https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=${access_token}`;
  const options = {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
    },
    body: JSON.stringify(message),
  };
  await fetch(url, options);
}

4、上传临时素材。

/**
* 上传临时素材
* @param {string} access_token - access_token
* @param {string} type - 媒体文件类型,分别有图片(image)、语音(voice)和文件(file)
* @param {string} filename - 文件名
* @param {Buffer} buffer - 文件二进制数据
* @returns {Promise} mediaId和createdAt的对象
*/
async function uploadMedia(access_token, type, filename, buffer) {
  const url = `https://qyapi.weixin.qq.com/cgi-bin/media/upload?access_token=${access_token}&type=${type}`;
  const formData = new FormData();
  formData.append('media', buffer, {
    filename,
  });
  const response = await fetch(url, {
    method: 'POST',
    body: formData,
  });
  const result = await response.json();
  return {
    mediaId: result.media_id,
    createdAt: result.created_at,
  };
}



5、获取应用可见范围。

/**
* 获取应用可见范围
* @param {string} access_token - access_token
* @returns {Promise} 应用可见范围
*/
async function getAppVisibleScope(access_token) {
  const url = `https://qyapi.weixin.qq.com/cgi-bin/agent/get?access_token=${access_token}&agentid=AGENTID`;
  const response = await fetch(url);
  const result = await response.json();
  return {
    allow_partys: result.allow_partys,
    allow_tags: result.allow_tags,
    allow_users: result.allow_users,
  };
}



三、注意事项

在使用企微接口文档时,需要注意以下几个事项:

1、企微接口需要企业微信管理员授权后才能使用。

2、上传临时素材有大小限制。

3、发送消息需要按照企微接口文档提供的格式进行消息体的构造。

4、获取应用可见范围需要获取应用的agentid。

总而言之,企微接口文档提供了丰富的功能,可以满足开发者的大部分需求。开发者在使用时需要按照文档规范进行操作,注意相关的事项,以保证接口的正确使用。

顶部