Jerry的前一篇文章 SAP FSM 学习笔记(一) : 使用API消费FSM的数据 介绍了SAP Field Service Management Restful API的消费方式,本文继续介绍如何通过微信公众号这一平台来调用这些API.
这篇文章介绍的全部内容,均是Jerry从本组的同事Li Cris那里学来的,特此表示感谢。
假设我们的场景是:希望在微信里能够浏览SAP FSM里可用的服务技师,如下图所示:
那么首先要设计一个Web应用,在该Web应用里通过第一篇文章介绍的方式,使用SAP FSM提供的nodejs SDK去调用API.
为此,我们开发了一个Vue应用,在Vue生命周期钩子函数mounted里,发起对SAP FSM employee(技师)数据的请求:
在我们微信里指定的时间段内,SAP FSM有三个可用的技师,其名称,用户评分,头衔,服务年限等数据通过FSM nodejs SDK返回给微信端,如上图微信开发者调试器里所示。
比如employeeID为2E9BC784D477CA3DD048E593D853CFF1的这条数据,可以直接在FSM里通过这个url查看:
https://de.coresystems.net/master-data-management/#/people/details/2E9BC784D477CA3DD048E593D853CFF1
这个Vue应用做好之后,部署到服务器上,生成一个url,我们假设为https://www.xxx.com/smart
如何将这个url和微信公众号绑定起来?
在微信公众号的自定义菜单里,创建一个新的菜单项“预约”,给它维护一个特定的url.
这样在手机微信里点击这个菜单,就会跳转到对应的url.
url格式:https://open.weixin.qq.com/connect/oauth2/authorize?appid=
其中appid在微信公众号后台的公众号开发信息里获取:
而redirect_url后面的值,为web应用https://www.xxx.com/smart进行url encode后的值。
这一切设置好之后,从微信公众号菜单跳转到web应用的场景就能工作了。
如果想在本地模拟微信访问的方式调试部署到服务器上的Web应用,只需要安装微信开发者工具,将自己的个人微信号绑定到微信公众号的开发者微信号列表中去:
然后用个人的微信号扫码登录微信开发者工具,在地址栏里输入上述包含oauth 2.0重定义的那一长串url,点击Allow按钮:
就可以像使用Chrome开发者工具那样,对前端应用代码进行单步调试了:
后续Jerry会继续介绍更多微信和SAP FSM的集成场景,敬请期待。