实战营第3课 | 学习笔记

简介: 简介:快速学习实战营第3课

开发者学堂课程【钉钉应用云开发实战营:实战营第3课】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/909/detail/14406


实战营第3课

目录

1. 开放平台基本介绍

2. 应用开发介绍

3. 服务端 API 介绍

4. API Explorer 介绍


一.开放平台基本介绍

钉钉开放平台是基于钉钉的基础产品和底座,为生态合作伙伴、企业客户及开发者提供所需

要的开放能力。通过钉钉开放平台可以帮助企业快速、低成本的实现高质量的场景化/行业化应用,实现生产、管理、协作、运营的业务在线化。

门户

开发者后台

开发文档

开放平台官网

动态通知

开发者助手(服务窗)

公告日志更新

圈子钉钉群

技术支持

工单机器人

最佳实践FAQ

技术沙龙线上直播

开放平台主要是面向企业用户。主要提供给企业内部应用。与第三方的服务商企业内部可以做一些。

例如 oa 系统,审批流程等。第三方服务商可以根据企业的需求,然后做出一些应用。投放到市场售卖。现今有三个门户。

开发者后台是可以做一些创建和发布应用等。

开发文档是开放平台对外开放的能力。

开放平台官网现如今提供了一个类似于机器人叫做开发者助手。若开发商在开发过程中遇到一些问题,通过开发者助手可以解答。

并对开发的一些能力做出一些公告与更新。现如今,已开发专属钉钉的圈子。

成为开发者

开发者定义

不同身份的钉钉开发者可开发不同类型的应用。开发者关联的组织根据需要完成相关认证后,开发者才可以进行应用开发。

开发者

开发的应用类型

关联的组织

关联的组织

第三方企业应用

作为应用服务商的开发者开发第三方企业应用,你的企业组织必须完成应用服

务商认证。详情请参考应用服务商入驻流程。

定制服务商的开发者

以委托身份开发企经内部应用

作为定制服务商的开发者为企业定制开发应用,你的企业组织必须完成定制服

务商认证。详情请参考定制服务商商入驻流程。

企业内部开发者

企业内部开发者

作为企业内部员工开发企业自建应用,你的企业组织必须完成企业认证。

开发者权限

将开发者添加为子管理员并赋予相关的开发者权限和工作台管理权限

image.png

企业内部应用

面向企业内部开发人员和定制服务商,

自主开发内部应用或工作台,

供企业内部使用

第三方企业应用

面向应用服务商。开发应用接入钉钉。

管理员开通后,钉钉上的企业/组织即可使用

个人应用

而向应用服务商,开发应用接入钉钉,

提供给钉钉个人用户使用,

此类应用不需要管理员安装。个人即可真按使用。

第三方应用和企业应用都是面向第三方服务商。企业内部应用,企业内部做一些审批流。

个人应用同样为第三方服务商。进行提供。主要面向个人。

综上简单说明:

Agentld ID

企业内部应用独有,拥有独有标志。
基础概念
1.Agentid/ Appld
企业内部应用的唯一标识,创建应用后系统会自动生成个 Agentid 在已创建应用的基础信息页面中可以直看

2.AccessToken

钉钉接口的时候,必须要有一个属于自己的 acces token 来进行获取。同时,他拥有一定的有效期。接口应用重新获取,会获取相同的。
access token 是企业后台通过钉钉接口获量取信息的重要凭据。在调用钉钉接口时必进须携带 access token 用于验证接口的访问。
恒印权限(默认 cess token 的有效期为7200置基画居秒,有效明内重复获取,会返回相同的。
access token , 并自动续期)
3.AppKey/AppSecreta

企业内部所拥有
AppKey 是应用的唯一身份标识,AppSecret 见对应的调用密钥。创建企业内部应用后,不会自动生成一对 AppKey 和 AppSecret ,可用
来获取 AccessToken

4.CustomKey/CustomSecret
授权给定制服务商创建定制应用后生成的开发密钥,可以用来获眼 AccessTok 基础概念
1.Corpld
企业在钉钉中的标识,每个企业有统一的 Corpld ,可登最开发者后台首页查到。2.Userld

企业内每个员L都有唯的 Userld ,也成 Staffld .可在创建用户时指定,创建后不可修改。同一个人在不同企业用Userld可相同也可不同。

3. Unipnid
员工在当的开发者企业更日范围内的唯一标识,系统生成,制定值不会改变,定制成用与扫码查争应用结合使用场解下,可 Runionid 关联用户身份。

4. SuiteKey/SuiteSecretSuiteKey 是应用的唯一身份标识,Suite Secret 是对应的调用密钥。创建第三方应用后,系统会自动生成对 SuiteKey 和 SuiteSecret,


二、应用开发介绍

企业内部开发
钉钉上的企业或组织可以基于钉钉的开放能力,白土开发,供企业或组织内部使用,以满足办公场景中的个性化需求。
使用场景:将企业自己的 HR、CRM OA、客户管理、I业务管理等系统接入钉钉:开发一款应用,供该企业内部员工使用等,实现移动化办公。

首先登陆开发者后台

image.png

调接口前权限管理

获取通讯录权限范围

调用通讯录相关接口前,需要添加通讯录接口权限,可通过当前接口获取通讯录权限范围。

对于通讯录相关的接口,在调用前管理员必须在开发者后台先申请对应的接口权限,并指定这些接口可以获取哪些

通讯录范围。如下图所示,当前应用的access token只具备管理部广JA的通讯录权限。

开发者可以先调用本接口查看应用的通讯录授权范围。

image.png

每个应用在开发者后台。需要在开发管理这里。服务器出口IP将自我服务器IP派至进去。

企业内部开发注意事项
服务器出口 IP :
逗号分隔,最多20个,符合 IPV4 规则

支持通配符*号,如1.1.1.*
强烈建议使用 https 协议
JSAPI 鉴权:
小程序开发,调用 JSAPI ,不需要鉴权
H5 微应用开发,部分 JSAP |需要 dd.config 鉴权,部分JSAPI不需要鉴权,如免登。

 

三、服务端 API 介绍

几类常用服务端 API
1.身份验证
应用免登
管理后台免登扫码登灵
账出登录

2. 通讯录管理
用户管理

部门管理

角色管理
外部联系人管理

3.消息通知
工作通知消息

普通会话消息

群会话消息
4智能办公
智能工作流

考勤
日志
签到

智能填表

智能人事

image.png

用户:增删改用户获取部门下的用户

获取用户详情获

取管理员列表
跟进 unionld 获取 userld

获取企业人数

部门:

增删改部门
获取部汇] ID 列表

获取部汇]详情

获取部门上级部门

获取用户上级部门

角色:

增删改角色

增删角色组&员工

获取角色组

获取角色列表&详情

获取角色下的员工

外部联系人:

增删改外部联系人

获取外部联系人列表

获取外部联系人详情

获取外部联系人标签列表
服务端 API-身份验证
身份验证“免登”是指用户进入应用后,无需输入钉钉用户名和密码应用程序可自动获取当前用户身份,进而登录系统的流程。

钉钉应用内免登

1. 获取免登授权码

2. 获取用户 userld

3. 获取用户详情

管理后台免登

1. 获取免登授权码

2. 获取管理员身份信息 

注意:

需要使用 SSOSecret 获取 token

扫码登录

两种方式:

1. 直接使用钉钉提供的扫码登录页面

2. 网站将钉钉登录二维码内嵌到自己的页面中 

钉钉内免登

非钉钉应用的 H5 页面在钉钉内打开

1. 构造跳转链接

2. 根据授权码获取用户信息 

密码登录

手动输入钉钉的账户密码,登录第三方独立的 web 系统

1. 构造跳转链接

2. 根据授权码获取用户信息

服务端 API-事件订阅

HTTP 回流程

1. 开发者需要在钉钉开放平台配置 HTTP 请求接收地址用于接收推送的回调事件。

2.钉钉会向应用配置的 HTTP 地址推送回调事件数据包。使用应用创建时开发者在开发者后台填写的应用加解密 key 来进行加密,开发者填写的应用 Token 进行签名。详情请参考测试回调 URL 事件。

3. 应用在收到推送后需要进行验证签名和解密,并且返回包含经过加密的字符串的 JSON 数据。

4.调用注册回调事件接口接口要接收的回调事件。

 

回调接口

●注册回调

●接收回调

●获取推送失败事件

●更新事件

●查询事件

●删除事件

image.png

回调事件

●通讯录事件回调

●群会话事件回调

●审批事件回调

●签到本件回调

●考勤事件回调

●会议室事件回调


四、API Explorer 介绍

一个服务端,一个前端。

服务端 API Explorer 使用页面

一款可视化的 API 在线调试工贝,集成了 API 总览、快速检索、开发文档、可视化谢试、同步动态生成可执行 SDKDemo 代码,功能十工简单易用。

钉钉开放平台提供的可视化微应用 JSAPI 调用工具,方便开发者在线发起 Apl 调用。
常用功能介绍:

工单&需求建议

技术问题:
开发者后台首页技术答疑

开发者后台-百页-需求建议

产品问题:
1) PC端订订:头像服务大厅

2)于机端钉钉:我的-客服

相关文章
|
6月前
|
Java 索引
杨老师课堂_Java教程第四篇之数组运用
杨老师课堂_Java教程第四篇之数组运用
45 0
|
6月前
|
存储 JavaScript 前端开发
程序与技术分享:C++程序设计实验考试准备资料(2019级秋学期)
程序与技术分享:C++程序设计实验考试准备资料(2019级秋学期)
|
6月前
|
Android开发
杨老师课堂_安卓教程第一篇之入门
杨老师课堂_安卓教程第一篇之入门
38 0
|
7月前
|
SQL 安全 调度
网安预习课程笔记(九到十节)
本文是一篇关于渗透测试案例的分享,案例主要包括弱口令、SQL注入、内网渗透等多个环节,详细描述了渗透测试工作者如何通过一系列步骤获取不同服务器和系统的管理员权限。提到了一些关键的IP地址、数据库和服务器的发现,以及利用这些漏洞如何获取的权限。文章最后讨论了漏洞报告的组成部分,强调了报告的规范性和清晰度对于有效沟通和解决问题的重要性。 请注意,由于原始内容包含多个图片和链接,摘要中并未包含这些元素。
71 11
|
6月前
|
Java API 数据安全/隐私保护
杨校老师课堂之Java面向对象知识点整理集锦2
杨校老师课堂之Java面向对象知识点整理集锦
44 0
|
6月前
|
Java 编译器 开发工具
杨校老师课堂之Java面向对象知识点整理集锦1
杨校老师课堂之Java面向对象知识点整理集锦
24 0
|
6月前
|
机器学习/深度学习 Java API
杨校老师课堂之Java面向对象知识点整理集锦3
杨校老师课堂之Java面向对象知识点整理集锦
23 0
|
7月前
|
运维 监控 安全
网络安全预习课程笔记(四到八节)
网络安全领域的岗位多样化,包括应急响应、代码审计、安全研究、工具编写、报告撰写、渗透测试和驻场服务等。其中,应急响应处理系统故障和安全事件,代码审计涉及源码漏洞查找,安全研究侧重漏洞挖掘,工具编写则要开发自动化工具,报告撰写需要良好的写作能力。渗透测试涵盖Web漏洞和内网渗透。岗位选择受公司、部门和领导的影响。此外,还可以参与CTF比赛或兼职安全事件挖掘。了解不同岗位职责和技能需求,如安全运维工程师需要熟悉Web安全技术、系统加固、安全产品和日志分析等。同时,渗透测试包括信息收集、威胁建模、漏洞分析、攻击实施和报告撰写等步骤。学习网络安全相关术语,如漏洞、木马、后门等,有助于深入理解和学习。
|
7月前
|
运维 安全
|
存储 编译器 Linux
小白学习c++的的第一节课
小白学习c++的的第一节课
小白学习c++的的第一节课