笔记 - 更简单的使用 LINE Notify

最近帮客户写的功能上要用到 LINE Notify,先前主要都在玩 LINE BOT 就没有特别去理解这一块。当我去翻官方文件,觉得排版有点糟糕,都会看到忘记在看哪个API的说明。而网路上找的一些教学都显得特别複杂,于是只好自己来做个笔记,希望能帮助到一样也觉得文件太複杂的朋友们?。

补充一下 LINE Notify 的介绍与使用情境

他是一个官方的机器人,可接收来自各个已连动服务的讯息,简单来说就像是只能收信的 E-Mail 信箱。
由于 LINE@ 升级 2.0 后,主动发讯息给使用者要收费(虽然有免费500则,但是还是不够用),因此有些比较不重要的提醒功能(像是三餐提醒要吃饭了、或是客户在你的网站下了订单等等),就能丢给免钱的Notify来发。所以在自用的情境下是能省下蛮多讯息发送的费用的。


新增新的服务

先至 https://notify-bot.line.me/my/services/ 登录新的服务,登录完收取验证信之后就能拿到 Client IDClient Secret


产生连动网址

官方没提供生成工具,所以要自己做,主要就是要放上 ClientIDRedirectURI跟一个防止CSRF的乱码

https://notify-bot.line.me/oauth/authorize?response_type=code&scope=notify&response_mode=form_post&client_id=<放上你的Client_id>&redirect_uri=<放上你的RedirectURI>&state=<放一个随机产生的乱码>

RedirectURI 在有人连动时会收到一个带有 CODE 的 POST 请求

{  code: WGXfcDRMcGnSaM5321377w  state: 你刚刚放的 state}

API 01 : 拿code换成token

如题,这里需要用 ClientIDClientSecret 去换 token 回来。测试时可以用POSTMAN 去做。

POST https://notify-bot.line.me/oauth/token

BODY 放上

grant_type: authorization_codecode: 刚刚拿到的coderedirect_uri: 跟刚刚的也填一样 (反正他好像也不会丢东西过去)client_id: 你的 ClientIDclient_secret: 你的 ClientSecret

成功的话会回传

{"status": 200,"message": "access_token is issued","access_token": "9zxce60kmFxIx2I3xRAc9plnuWCRWLF2TxKHlUhkjBF"}

API02: 发送讯息

到这步就差不多全部了,要拿 token 来发送讯息

POST https://notify-api.line.me/api/notify

HEADER

Authorization: Bearer 刚刚的token

BODY

message: 你要发送的讯息

接下来按下送出,就能够收到啦 ????

本文同步发表于 https://medium.com/@r3850355/%E7%AD%86%E8%A8%98-line-notify-c9cead119dc1


关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章