首页 > SAP CLOUD > Open Connectors 完整例子,
2019
08-27

Open Connectors 完整例子,

以下为网上找的一个Open Connectors 创建的例子DEMO,记录一下,作为参考。
内容来自:http://zhuanlan.zhihu.com/p/56683830   
注:文本中使用的Spotify音乐,服务注册不对中国开放,所以默认情况下你申请不了SPOTIFY的API,也就是在中国有个服务是不可用的,应该使用个国外的VPN应该可以,但我没测试。

编者按:把音乐集成进SAP有什么用?你想想,当物料帐滚算成功后,成品入库质检合格后,立刻播放欢快的音乐,或者当日最热歌曲,与同事立刻从工位起身,随歌热舞,那场面,那愉悦的心情…好了,不瞎扯了,这是一篇SCP自建连接器的教程,有了它,你可以连接你梦想的一切,话说谁能帮忙搞通业务执行成功后激励,直接可以微信抢红包?…又想多了…

SAP Cloud Platform Open Connectors提供预构建和功能丰富的连接器,可简化连接,并与150多个非SAP云应用程序无缝集成。
用户可以通过协调的RESTful API连接到第三方API,并可以开发和映射规范数据模型,以扩展预构建的连接器。此外,用户还可以轻松地在不同的连接器上构建API组合。

Open Connectors 完整例子, - 第1张  | 优通SAP

Open Connectors是简化和加速SAP和第三方解决方案之间集成的绝佳选择,可用的预构建连接器列表很广泛: Slack,LinkedIn,Twitter,Google Drive,Facebook,Paypal等。
如果要查看可用连接器的完整列表,请访问以下链接:
在阅读了所提供的功能和优点之后,我有一个简单的问题困扰着我,如果我的API在预构建的连接器列表中不可用怎么办?是否还有办法可以使用Open Connectors提供的功能?
为了找到答案,我访问了我的试用帐户,并开始使用可用的选项。
现有的150+连接器并没有我的需要,为了实现一个有趣的场景,将Spotify与UI5应用程序集成,我采用了Web API的方法

注意:Spotify API将在本文中用作示例,但真正的目的是解释如何使用Open Connectors,即使您的API在预构建连接器列表中不可用。希望您抽象概念并在未来的挑战中利用这些信息。

构建一个新的连接器
如果我们在“连接器”列表中搜索Spotify,我们找不到任何可用的连接器,只有“构建新连接器”选项。

Open Connectors 完整例子, - 第2张  | 优通SAP

选择此选项,然后在下一个屏幕中点击“ Import”。

Open Connectors 完整例子, - 第3张  | 优通SAP

目前,有四种可供选择的选项:

ConnectorSwaggerSOAPOData V4

Open Connectors 完整例子, - 第4张  | 优通SAP

Connector是Open Connectors本身提供的模式,您可以导出自定义连接器并在不同的租户中重新导入,Swagger是一个开源软件框架,可帮助开发人员设计、构建、记录和使用RESTful Web服务,SOAP就是消息Web服务,用于交换XML数据的协议,OData V4是开放式数据协议,现在主要由SAP采用,它提供了一组构建和使用RESTful API的最佳实践,其中包含嵌入在内的元数据和查询选项等额外功能。
现在我们已经了解了可用的选项,让我们探索 [Spotify for Developers](http://developer.spotify.com/) 页面,以了解访问数据的最佳方式。检查文档,我们可以找到以下可选项:

Open Connectors 完整例子, - 第5张  | 优通SAP

我们来看一下Web API文档。
Spotify Web API基于简单的REST规则,Spotify Web API可直接从Spotify数据目录返回有关音乐、艺术家、专辑和曲目的JSON元数据,这是UI5应用程序的完美集成方案!

Open Connectors 完整例子, - 第6张  | 优通SAP

在Developer Portal中可以在Spotify的GitHub帐户中,找到Web API的定义,您可以通过链接访问 [GitHub Spotify Web API](http://github.com/spotify/web-api/) 。
目前只有一个问题,目前的定义是基于RAML(RESTful API建模语言),我们需要找到一种方法,在构建连接器之前将此规范转换为Swagger。
有不同的方法可以解决这个问题,但我找到了 [APIMATIC](http://www.apimatic.io/) 。此服务提供了一个API Transformer,可以快速解决此问题。注册该服务,然后按“Convert Now”按钮。

Open Connectors 完整例子, - 第7张  | 优通SAP

插入GitHub项目中可用的api.raml文件的URL,然后按Convert Now。系统执行脚本,几秒钟后您就会收到新的Swagger Web API定义的下载。
* Spotify Web API RAML:

Open Connectors 完整例子, - 第8张  | 优通SAP

让我们回到Open Connectors并继续前面的步骤。
导入Swagger文件并按CONTINUE IMPORT。

Open Connectors 完整例子, - 第9张  | 优通SAP

选择所有资源,输入Element Key,接着单击Import以关闭引导。

Open Connectors 完整例子, - 第10张  | 优通SAP

连接器是根据Swagger文件中的规范生成的,您可以通过新连接器的配置查看以下界面。

Open Connectors 完整例子, - 第11张  | 优通SAP

注意:RAML规范将API的版本存储在参数中,但在转换和上传Swagger期间,需要在连接器属性中修复一个小错误,修改Base URL,删除DefaultParameterValue并替换为v1。

* 预期的基本URL:http://api.spotify.com/v1
点击“Information”选项卡并更新连接器的文档和徽标。您可以从 [品牌指南](http://developer.spotify.com/branding-guidelines/) 页面下载其徽标。

Open Connectors 完整例子, - 第12张  | 优通SAP

现在我们的规范已成功加载,我们只需要调整Authentication的设置,并执行连接测试。
要了解可用的身份验证方法,让我们再一次探索Spotify开发人员文档,我们可以在[授权指南]中(http://developer.spotify.com/documentation/general/guides/authorization-guide/) 找到我们需要的所有相关信息。

Open Connectors 完整例子, - 第13张  | 优通SAP

正如官方指南中所述,Spotify API有两种方法可以进行身份 验证:

应用授权用户授权

在选择选项之前,我们首先需要在 [开发人员仪表板中](http://developer.spotify.com/dashboard/applications) [注册应用程序](http://developer.spotify.com/documentation/general/guides/app-settings/#register-your-app) 。打开仪表板,然后选择“创建应用程序”选项。

Open Connectors 完整例子, - 第14张  | 优通SAP

定义名称,描述和应用类型。

Open Connectors 完整例子, - 第15张  | 优通SAP

在第二个屏幕中选择一个非商业应用程序,移至第三个屏幕,确认协议并提交。现在已创建应用程序,您可以准备好使用客户端ID和客户端密钥。

Open Connectors 完整例子, - 第16张  | 优通SAP

点击“编辑设置”按钮…

Open Connectors 完整例子, - 第17张  | 优通SAP

填写选项“重定向URL”,并在白名单使用SAP云平台认证:http://auth.cloudelements.io/oauth

Open Connectors 完整例子, - 第18张  | 优通SAP

配置应用程序后,就可以评估文档,并了解我们如何对API进行身份验证。在官方文档中,我们可以看到三种不同的授权流程。

Open Connectors 完整例子, - 第19张  | 优通SAP

为了本文测试,我们将使用 Authorization Code流程 ,在最复杂的场景中验证应用程序。使用此选项,我们可以访问“用户资源”并在到期时间(通常为1小时)后自动“刷新令牌”。
让我们检查一下Authorization Code流程中涉及的所有步骤:

Open Connectors 完整例子, - 第20张  | 优通SAP

注意:应用程序(openconnectors)会触发初始身份验证请求,将用户重定向到Spotify Accounts Service,他需要确认访问权限,确认后应用程序将重定向回具有新“访问令牌”的“OAuth重定向URL”。使用此“令牌”,应用程序可以代表用户执行所有Web API操作,如果令牌过期,则通过Spotify Accounts Service请求新令牌而无需用户的交互。

现在是时候回到Open Connectors,并结束这个新连接器的Authentication配置了。选择OAuth2身份验证方法,您将看到开箱即用的几个参数。

注意:如果您从未听说过OAuth2我建议您查看 [官方文档](http://oauth.net/2/) 以了解此授权协议的工作原理。

Open Connectors 完整例子, - 第21张  | 优通SAP


上图中的参数由Open Connectors自动提供,它们基于OAuth2规范。让我们使用 [授权代码流程中](http://developer.spotify.com/documentation/general/guides/authorization-guide/#authorization-code-flow) 提供的数据更新它们:
* OAuth API密钥:
* OAuth API秘密:
* OAuth范围:用户读取私有用户读取电子邮件
* OAuth令牌刷新网址:http://accounts.spotify.com/api/token
* OAuth刷新间隔:3600
* OAuth令牌撤销网址:http://accounts.spotify.com/api/token
* OAuth基本标题:true
完成此配置后,按“保存”,再次打开“连接器”页面,这次搜索Spotify时,您将看到可供使用的新连接器。

Open Connectors 完整例子, - 第22张  | 优通SAP

当您将鼠标移到卡片上时,可以看到一些额外的选项,单击Authenticate以启动该过程并创建一个新实例。

Open Connectors 完整例子, - 第23张  | 优通SAP

选择实例的名称(在我的示例中为feliperodrigues),打开可选字段并确认“客户端ID”和“客户端密钥”。最后按“创建实例”按钮。

Open Connectors 完整例子, - 第24张  | 优通SAP

打开连接器会自动重定向到Spotify授权页面并请求访问确认。

Open Connectors 完整例子, - 第25张  | 优通SAP

按下按钮同意和Spotify帐户服务将重定向到SAP Cloud Platform,在收到令牌后,SCP会再次重定向回打开连接器,并显示以下成功消息:

Open Connectors 完整例子, - 第26张  | 优通SAP

在用户的帐户的Spotify,打开链接 [应用程序](http://www.spotify.com/au/account/apps/) ,并检查openconnectors在授权的应用程序列表中的应用程序,通过该页面,也可以撤销访问。

Open Connectors 完整例子, - 第27张  | 优通SAP

让我们回到Open Connectors并访问标题 Test in the API docs。
在此页面中,您可以看到名为feliperodrigues的经过身份验证的实例以及可用于测试的API操作。

Open Connectors 完整例子, - 第28张  | 优通SAP

向下滚动并打开方法GET / browse / categories,按下试用按钮。

Open Connectors 完整例子, - 第29张  | 优通SAP

现在这些字段可用于已经填充了授权令牌的版本,可以随意更新过滤器,或者只是按下Execute按钮以首次测试Web API。

Open Connectors 完整例子, - 第30张  | 优通SAP

如果一切都按预期运行,您应该收到200作为响应代码和响应正文中可用的JSON中的类别列表。检查以下结果:

Open Connectors 完整例子, - 第31张  | 优通SAP

到这里,已经完成了这个成功的测试。
如果你想继续这一步,我建议你阅读Divya的文章(第3、4部分):
希望你喜欢这些内容,下次再见。
最后编辑:
作者:yangsen
本站为个人博客网站,全由我个人维护,我从事SAP开发13年,其它ERP开发7年,基本都是零售行业。本站记录工作学习的过程, 有SAP相关询问专、兼职工作可随时联系我。 有网站相关的问题可直接在文章下方留言,或者联系我。 邮件:yan252@163.com给我。 QQ:415402519

留下一个回复

你的email不会被公开。

five × one =