钉钉H5接入流程

JavaScript011

钉钉H5接入流程,第1张

成功后示例 开发前准备: 1,开放平台注册申请权限 2,选择钉钉应用类型,创建应用,获取AppKey,AppSecret,CORP_ID 3,准备开发环境 静态页面、JS,CSS放在ngnix,本地接口用tomcat。(这个我在想flutter 如何能够放到里面不是太理解) 4,调试:钉钉的H5微应用调试只能“真机”调试,所以 建议 调试的时候使用 内网穿透工具 ; 5,JSAPI免登授权码  获取当前钉钉登录用户的账号信息,需要通过免登授权码换取 (这个需要后端api进行辅助 前端和后端才能进行通信)在开发者后台添加完大概就这样了, 其他信息:如 回调URL(在服务端搭好之后填写), 首页地址等, 后续可以修改.     1. 相关配置参数可参照上面 应用基础信息 那张图来一 一对应 .     2. 所有的关键信息 是存储在服务端的, 如我们的suiteKey/suiteSecret/suiteTicket/aesKey/token     3. 所以和钉钉相关的数据交互都是在服务端,后台完成的, 除了获取免登授权码     4. 我们的前端和我们的服务端交互过程中, corpId 由前端获取 , 传递给我们     5. 服务端和钉钉交互所使用的accessToken , 可以每次都去钉钉重新获取, 但是更建议在有效期内, 后端获取一次, 然后存储在前端, 每次的数据交互将token 传递给后端     6. 钉钉向我们服务器发送请求, 也就是钉钉应用里面的回调地址     7. 钉钉的所有消息都是通过回调通知我们的, 而且消息的结构是一致的 根据上面的相关说明将服务端放置在自己的公网服务器也好,或者使用相关的 内网穿透工具 也好  (自行解决) 总之, 现在要有一个可以 访问我们 服务端项目的 公网地址  确保你自己的服务器可以使用公网地址访问到,并且成功返回数据同时确保: 必须有回调地址借口用来接收钉钉发送的消息                                    (本文示例地址:/ding/callback) 必须有一个接收免登授权码和企业corpId 来返回用户信息的接口      (本文示例地址:/ding/login ) 公网可以访问的服务端地址, 接收钉钉发给我们的消息(回调地址)如:http://ding.lnexin.cn/server/ding/callback,我们自己的登录地址,如:http://ding.lnexin.cn/server/ding/login 在钉钉开发者平台创建配置好的一个H5微应用 确保服务端的参数和微应用的基础信息一致 完成上述步骤,在客户端依旧是没有应用入口的,如: 下面需要在开发者平台进行授权最后能在钉钉上使用了 基本就是这样一个流程 如果感觉不太详细 点击下面链接看就可以 以上文章通过读  https://www.cnblogs.com/applerosa/p/11509512.html

ISV 机制是为“应用市场”而设计的,按钉钉官方的想法,作为独立服务提供商,可以开发完应用之后,上架市场,需要的企业自己到市场上来采购应用。基于此,它的授权,通知的实现机制也就是现在这样,有些麻烦的样子了。用户“采购应用”, 或者对应用做任何的配置性的操作,都是在钉钉的服务中完成的,但是实际提供服务的,却是具体 ISV 开发的应用。所以,企业用户,钉钉,ISV 三方之间,钉钉的服务就是一个衔接的作用,这其间的“推送”也算 ISV 方式与普通的“微应用”方式最大的不同了。(推送那里就涉及 AES 加解密)。

建立连接

你可以使用以下两种方式,将钉钉微应用连接到你的企业应用:

1、企业应用服务器调用钉钉开放平台提供的接口,以钉钉微应用的身份给企业用户的钉钉账号推送消息,以下称 主动调用模式。

2、钉钉用户在使用企业提供的微应用H5页面时,该页面可以调用钉钉提供的JS接口,使用钉钉开放的终端能力和业务能力,以下称 JSAPI模式。

3、钉钉服务器把用户发送的消息或用户触发的事件推送给企业应用,由企业应用处理,以下称 回调模式。

主动调用

当企业应用服务器调用钉钉开放平台接口时,需使用https协议、Json数据格式、UTF8编码,访问域名为 https://oapi.dingtalk.com。

在每次主动调用钉钉开放平台接口时需要带上AccessToken参数。AccessToken参数由CorpID和CorpSecret换取。对于ISV来说,获取企业授权的access_token

CorpID是企业在钉钉中的标识,每个企业拥有一个唯一的CorpID;

CorpSecret是企业每个应用的凭证密钥。

CorpID及CorpSecret可以在钉钉为企业提供的管理后台中找到,由钉钉自动分配。

POST请求请在HTTP Header中设置 Content-Type:application/json,否则接口调用失败

主动调用的频率限制

当你获取到AccessToken时,你的微应用后台就可以成功调用钉钉后台所提供的各种接口或访问相应企业的资源或给成员发消息。

为了防止微应用的程序错误而引发钉钉服务器负载异常,默认情况下,每个服务端调用接口都有一定的频率限制,当超过此限制时,调用对应接口会收到相应错误码。

以下是当前默认的频率限制,钉钉后台可能会根据运营情况调整此阈值:

每个企业调用单个接口的频率不可超过1500次/分

每个ISV(应用提供商)调用单个接口的频率不可超过2000次/分

每个ISV(应用提供商)调用单个企业的单个接口频率不可超过1500次/分

每个套件调用单个企业的单个接口频率不可超过1000次/分