1, 封装了一个企业微信API调用函数【ExeQywxapi】,服务端添加好需要用的到URL,设置企业微信后端的2个密码;前端只要传入相应的参数即可,access_token 秘钥后端自动生成刷新。
2,前端参数:
【url里面的参数】若有,则名称与后端url地址里的参数一致(json格式);
【data 参数】若有,则赋值给SendData 变量(data格式可参考企业微信开发文档);
【Url】就是后端定义的 url ID 名称;
【Token】后端自定调用此api接口的权限秘钥;
【sErrorMsg】后端返回的错误代码信息;
3,范例:
var
Url, sErrorMsg, empcode, stremp, Token: string;
json: ISuperObject;
begin
if messagedlg('提示:你确定要发送此消息?', mtWarning, [mbyes, mbNo], 0) = mrno then
exit;
empcode := '';
if empid.text <> '' then
empcode := empid.text;
//消息封装格式(请看官网文档)
stremp:= '{' + ' "touser" : "' + empcode +
+ ' "msgtype" : "text",' + ' "agentid" : 1000002,'
+ ' "text" : {'
+' "content" : "请点击核对 你的2021-01月工资'
+'<a href=\"http://work.weixin.qq.com\"></a>" },'
+ ' "safe":0,' + ' "enable_id_trans": 0,' + ' "enable_duplicate_check": 0,' + '} ';
json := TSuperObject.Create(stObject);
try
Url := 'SendMessage';
Token:=123456;
json.S['SendData']:= stremp;
if not dm.ExeQywxapi(vdata, Url,Token ,json.AsString,sErrorMsg) then
begin
json.Clear(true);
json := SO(vdata);
sErrorMsg := json.S['errcode'];
showmessage('发送失败:' + sErrorMsg);
exit;
end;
showmessage('消息发送成功...')
finally
json := nil;
end;
4, 后端界面:
![]() |