如何使用 Midway Serverless 开发一个钉钉的机器人?
来在云开发平台使用 Midway 的模板来创建一个应用。打开云开发平台地址, http://workbench.aliyun.com,然后点击免费云开发创建应用,接下来在技术场景里选择 Web 场景,在下拉菜单里选择 Midway 一体化解决方案,然后就是使用 NodeJS 来进行 开发,填写应用名称和应用介绍,点击完成。
点击完成之后,云开发平台就会自动创建此个应用的仓库,同时系统会把 Midway 代 码通过模板发进去并自动生成。稍后出现开发部署的按钮,点击就可以进入 Web IDE 里 进行纯云端的 Serverless 函数开发。
进入到 Web IDE 里,会看到整个代码项目目录已经创建好了。src 目录中包含 tsx 代码,前端 react 的 JSX 的代码;apis 目录里面是后端的函数代 码,即 Midway JS 框架的后端函数。在同一应用里可同时进行前后端的一体化开发。开 发前可编写前端 UI 界面,然后编写后端的函数,前端的界面可以直接通过 http 请求阿里云 在本地的开发函数。 Midway 框架是基于阿里云 NodeJS10 环境的,Midway 框架提供了 4 个函数,他们 分别是:render、index、detail 和 list。render 绑定的路径是/,意思是匹配所有请求的 路径都会导到函数上面来;index、detail 和 list 是分别是三个 API 接口。然后当路径请求 进来的时候,首先会去进行这种非通配符的路径匹配,如果匹配到了 index 接口那就执行 index 的函数,然后把 index 的返回值结果进行响应。如果路径没有匹配到,它就会通过 通配符/,到 render 函数里面。首先在终端使用 npm install 命令安装前端依赖。阿里云云开发平台为了提高大家的安 装的速度,终端里是默认集成了淘宝的 npm 镜像的,所以大家可以直接使用 npm install。 启动本地开发 server 安装完成后执行 npm run dev ,就可以启动一个本地开发的 server。 这个时候会 启动前端 react 和后端 Midway 的本地 Dev Server。因为是一体化开发,所以前后端拥 有同一个端口,可以同时接收前后端的各种请求。 在本地 Dev Server 启动起来后,可以通过本地的开发服务器打开正在开发的项目。 在 src 目录下面有 APIS 目录,APIS 目录里面其实就是我们整个后端的接口代码。比 如前端首页的 Hello Midway Serverless,是通过 index 接口来响应返回的。当我们在 后端进行一些修改并保存,刷新后会同步到前端页面。
创建钉钉机器人 打开创建的钉钉群,通过智能群助手添加机器人。 点击添加机器人后,选择自定义机器人。添加完成前可根据需求填写机器人名字并进行 安全设置。安全设置可以保护创建机器人不被盗用,所以作为创建者在安全设置这里添加一 个自定义的关键词,那么只有设定的关键词出现时,钉钉才会去把消息推送到群里。然后开启 outgoing,outgoing 机制是为了在群里@机器人时,它能够根据适配 POS 地址,接收请求并反馈群消息。 最后点击同意完成创建。
点击完成后,页面会出现一个 Webhook。为了实现能够把消息推送到群里,需要通过 向 Webhook 发一个 post 请求。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。