- 应用开发平台简介(新版)
- 开发应用
- 服务端 API
- 开发指南
- 身份验证(免登)
- 获取访问凭证
- 通讯录管理
- 上下游组织
- 上下级组织
- 服务窗
- 即时通信IM
- 钉钉客联
- 考勤
- 智能人事
- OA 审批
- 智能填表
- 日程
- 待办任务
- Teambition 项目管理
- 日志
- 签到
- 文档/文件
- 公告
- 钉工牌
- 音视频
- 工作台
- 互动卡片
- 企业文化
- 宜搭应用开发
- 专属开放
- 客户管理(官方CRM)
- 行业开放
- 生态开放
- 应用管理
- 智能硬件
- 附录
- 事件订阅
- 参考
- 常见问题
- 历史文档(不推荐)
- 钉钉云
- HTTP回调
- 审批待办
- 旧版宜搭API参考
- 通讯录管理
- 钉钉红包
- 身份验证(免登)
- 花名册
- 行业连接
- 日程
- 开发前必读
- 开发钉钉应用
- 企业内部应用开发
- 第三方企业应用开发
- 第三方个人应用开发
- H5微应用
- 服务端API
- 通用能力
- 常见问题
- 新版服务端API(DingTalk OpenAPI)
- 生态伙伴API
- 小程序
- 钉钉小程序介绍
- 小程序开发工具
- 小程序运行/更新机制
- 框架
- 基础组件
- 小程序JSAPI
- JSAPI总览
- 免登授权码
- 地图
- 创建地图对象MapContex
- MapContext
- MapContext 概览
- 计算地图路径(calculateDistance)
- 添加/删除/更新指定标记(changeMarkers)
- 清除步行导航路线(clearRoute)
- 设置所有手势是否可用(gestureEnable)
- 获取当前地图中心位置(getCenterLocation)
- 获取地图属性(getMapProperties)
- 获取地图整体的视野范围(getRegion)
- 移动视野到定位点(moveToLocation)
- 规划默认步行路线(showRoute)
- 设置指南针是否可见(showsCompass)
- 设置比例尺控件是否可见(showsScale)
- 指定标记进行动画(smoothMoveMarker)
- 轨迹动画(smoothMovePolyline)
- 平移点标记(translateMarker)
- 增量更新地图(updateComponents)
- 点标记(Marker)图鉴
- 开放接口
- 基础
- 更新管理小程序
- 网络
- 多媒体
- 界面
- 显示模式
- 导航栏
- TabBar
- 交互反馈
- 离开页面二次确认
- 下拉刷新
- 选择日期
- 动画
- 画布
- 创建canvas
- CanvasContext
- CanvasContext概览
- 把画布内容导出成图片(toTempFilePath)
- 文本对齐方式(setTextAlign)
- 文本基线(setTextBaseline)
- 设置填充色(setFillStyle)
- 设置边框颜色(setStrokeStyle)
- 设置阴影样式(setShadow)
- 创建线性的渐变色(createLinearGradient)
- 创建圆形的渐变色(createCircularGradient)
- 创建渐变点(addColorStop)
- 设置线条宽度(setLineWidth)
- 设置线条的端点样式(setLineCap)
- 设置线条的交点样式(setLineJoin)
- 设置最大斜接长度(setMiterLimit)
- 创建矩形(rect)
- 填充矩形(fillRect)
- 画一个矩形(strokeRect)
- 清除画布上矩形区域内的内容(clearRect)
- 填充内容(fill)
- 画出当前路径的边框(stroke)
- 创建路径(beginPath)
- 关闭一个路径(closePath)
- 移动路径(moveTo)
- 增加一个新点(lineTo)
- 画一条弧线(arc)
- 创建三次方贝塞尔曲线路径(bezierCurveTo)
- 设置为剪切路径(clip)
- 创建二次贝塞尔曲线路径(quadraticCurveTo)
- 缩放(scale)
- 顺时针旋转(rotate)
- 变换原点坐标(translate)
- 设置字体大小(setFontSize)
- 绘制被填充的文本(fillText)
- 绘制图像(drawImage)
- 设置全局画笔透明度(setGlobalAlpha)
- 保存当前绘图上下文(save)
- 恢复绘图上下文(restore)
- 将描述画到画布中(draw)
- 获取canvas区域隐含的像素数据(getImageData)
- 将像素数据绘制到画布(putImageData)
- 键盘
- 滚动
- 节点查询
- 位置
- 缓存
- 设备
- 拉群11
- 拉取
配置事件订阅
使用场景#
事件订阅流程#

配置请求地址和事件订阅#
1.
2.

{
"encrypt": "ajls384kdjx98XX" // 加密字符串,解密方法请看下方的消息加解密
}
3.

接收并响应事件#
http://你注册的HTTP地址?signature=111108bb8e6dbc2xxxx×tamp=1783610513&nonce=380320111
{
"encrypt":"1ojQf0NSvw2WPvW7LijxS8UvISr8pdDP+rXpPbcLGOmIBNbWetRg7IP0vdhVgkVwSoZBJeQwY2zhROsJq/HJ+q6tp1qhl9L1+ccC9ZjKs1wV5bmA9NoAWQiZ+7MpzQVq+j74rJQljdVyBdI/dGOvsnBSCxCVW0ISWX0vn9lYTuuHSoaxwCGylH9xRhYHL9bRDskBc7bO0FseHQQasdfghjkl"
}
{
"msg_signature":"111108bb8e6dbce3c9671d6fdb69d1506xxxx",
"timeStamp":"1783610513",
"nonce":"123456",
"encrypt":"1ojQf0NSvw2WPvW7LijxS8UvISr8pdDP+rXpPbcLGOmIxxxx"
}
消息加解密#
encrypt
。encrypt = Base64_Encode(AES_Encrypt[random(16B) + msg_len(4B) + msg + $key])
是对明文消息msg加密处理后的Base64编码。其中:
常见问题#

错误 | 原因 | 调整方式 |
---|---|---|
计算解密文字corpid不匹配 | DingTalkEncryptor中OWNER_KEY 参数错误。 | 当前开发者后台应用上的事件订阅,owner_key 需要传当前应用的appkey值。 |
不合法的aes key | DingTalkEncryptor中ENCODING_AES_KEY 参数错误。 | ENCODING_AES_KEY 自定义的固定43位字符串,只支持大小写字母和数字。 |
签名计算失败 | 解密方法中的参数使用有问题。 | 解密方法getEncryptedMap内的四个参数都来自钉钉服务器请求时带来的值。 |

【钉钉】API开发者 微信交流群
用微信扫右侧二维码,加入【钉钉】API开发者 交流群,互助沟通


修改于 2021-12-30 06:03:43