2026/3/29 4:02:22
网站建设
项目流程
优秀企业网站的优缺点,软广告经典例子,电气工程师报考条件,重庆城市建设网站QiWe开放平台提供了后台直登功能#xff0c;登录成功后获取相关参数#xff0c;快速Apifox在线测试#xff0c;所有登录功能都是基于QiWe平台API自定义开发。 核心前提 获取 ChatID#xff1a;你不能直接通过群名发送。必须先通过“获取客户群列表”接口获取外部群的 chati…QiWe开放平台提供了后台直登功能登录成功后获取相关参数快速Apifox在线测试所有登录功能都是基于QiWe平台API自定义开发。核心前提获取 ChatID你不能直接通过群名发送。必须先通过“获取客户群列表”接口获取外部群的chatid。应用权限你的自建应用必须在“客户联系”的业务范围内。AccessToken所有请求都需要有效的access_token。1. Python 实现 (使用requests)适用于快速脚本或轻量级后台。import requests import json def send_to_external_group(access_token, chat_id, text_content): url fhttps://qyapi.weixin.qq.com/cgi-bin/appchat/send?access_token{access_token} payload { chatid: chat_id, msgtype: text, text: { content: text_content }, safe: 0 } try: response requests.post(url, datajson.dumps(payload)) result response.json() if result.get(errcode) 0: print(消息发送成功) else: print(f发送失败: {result}) except Exception as e: print(f请求异常: {e}) # 调用示例 # send_to_external_group(YOUR_TOKEN, wrOgQhDgAA..., Hello WeCom!)2. Go 实现 (原生http)适用于高性能微服务场景。package main import ( bytes encoding/json fmt net/http ) type WeChatMessage struct { ChatID string json:chatid MsgType string json:msgtype Text struct { Content string json:content } json:text } func SendGroupMsg(token string, chatId string, content string) error { apiURL : fmt.Sprintf(https://qyapi.weixin.qq.com/cgi-bin/appchat/send?access_token%s, token) msg : WeChatMessage{ ChatID: chatId, MsgType: text, } msg.Text.Content content body, _ : json.Marshal(msg) resp, err : http.Post(apiURL, application/json, bytes.NewBuffer(body)) if err ! nil { return err } defer resp.Body.Close() // 解析返回结果可根据业务需求进一步处理 return nil }3. Java 实现 (使用RestTemplate)适用于 Spring Boot 项目。import org.springframework.web.client.RestTemplate; import java.util.HashMap; import java.util.Map; public class WeComService { private final RestTemplate restTemplate new RestTemplate(); public void sendMessage(String token, String chatId, String content) { String url https://qyapi.weixin.qq.com/cgi-bin/appchat/send?access_token token; // 构建请求体 MapString, Object requestBody new HashMap(); requestBody.put(chatid, chatId); requestBody.put(msgtype, text); MapString, String textNode new HashMap(); textNode.put(content, content); requestBody.put(text, textNode); try { MapString, Object response restTemplate.postForObject(url, requestBody, Map.class); if (response ! null 0.equals(response.get(errcode).toString())) { System.out.println(发送成功); } } catch (Exception e) { e.printStackTrace(); } } }避坑与进阶指南群 ID 的坑外部群的chatid与内部群格式不同。如果是通过“客户联系”接口获取的通常以wr开头。发送频率限制企业微信对主动向外部群推送消息有严格频率限制。如果短时间内发送过多接口会返回45009接口调用超过限制。群机器人(Webhook) vs 应用消息如果你只是想往某个固定的外部群发通知群机器人最简单无需编写复杂的 Token 维护逻辑。如果你需要程序化、动态地给不同的外部群发消息必须走上述应用 API流程。您是否需要我为您演示如何通过代码自动获取外部群的chatid列表