示例
//请先导入 web.rest.qywx 库然后再调用下面的代码
var qywx = web.rest.qywx();
//请指定企业微信的 corpid,corpsecret,后续所有的 token 获取、拼接、过期重试,它都会全自动处理
qywx.setAuth("YOUR_CORPID", "YOUR_CORPSECRET");
/*
// (可选) 设置全局错误拦截,只要接口报错就会走到这里
qywx.onError = function(errcode, errmsg){
print("【全局拦截】API调用失败:", errcode, errmsg);
}
*/
var wx = qywx.api();
/*
1. 因为网址路径叫 get,必须写为以 ["get"] 格式放到下标里避免被当成 HTTP 方法。
2. 最后的 .get(...) 才是真正的发起 HTTP GET 请求。
*/
*/
var user = qywx.user["get"].get(userid="*********")
var result = wx.externalcontact.groupchat.list({
status_filter=0;
limit=10;
})
// debug 模式调用接口,同一个api每分钟不能超过5次
var result = wx.externalcontact.groupchat.list({
status_filter=0;
limit=10;
},{
debug = 1 //查询:https://open.work.weixin.qq.com/devtool/query
})
if(result[["errcode"]]!==0){
print(result[["errcode"]],result[["errmsg"]])
}
// ==========================================
// 场景:发送应用消息 (POST 请求,提交 JSON)
// 接口:https://qyapi.weixin.qq.com/cgi-bin/message/send
// ==========================================
var sendResult = api.message.send({
touser = "UserID1|UserID2"; // 接收人,多个用|分隔
msgtype = "text"; // 消息类型
agentid = 1000001; // 你的企业微信应用ID
text = {
content = "你好,这是一条来自 aardio 的自动通知!"
};
});
if(sendResult[["errcode"]] === 0){
print("消息发送成功!");
}
// ==========================================
// 场景:获取打卡数据 (POST 请求,复杂的 JSON 结构)
// 接口:https://qyapi.weixin.qq.com/cgi-bin/checkin/getcheckindata
// ==========================================
var checkinData = api.checkin.getcheckindata({
opencheckindatatype = 3;
starttime = tonumber(time().addDays(-1)); // 昨天的 Unix 时间戳
endtime = tonumber(time()); // 今天的 Unix 时间戳
useridlist = ["zhangsan", "lisi"]; // 纯数组会转为 JSON Array
});
if(checkinData.errcode === 0){
print("打卡记录条数:", #checkinData.checkindata);
print( JSON.stringify(checkinData.checkindata,true) );
}
企业微信 API 客户端。
创建企业微信 API 客户端。
创建 REST 客户端,所有参数可选。
UserAgent 用于自定义 User-Agent 请求标头,用于服务器识别请求程序特征。
HTTP 代理服务器请指定为 "代理服务器地址:端口" 格式,
SOCKS 代理服务器请指定为 "socks=代理服务器地址:端口" 格式
└── 代理格式说明
"绕过代理的主机" 用法参考 inet.setProxy 源码的示例,一般不需要指定。
连接选项可用一个数值参数指定打开会话的选项,一般不需要指定。