嗨,球迷们!
我们都知道云平台集成流程给我们的业务流程带来了很多好处。这是通过将各种服务相互集成并执行所需的操作来实现的。
但它不一定总是一个业务流程,对吗?如果我告诉你,你可以使用云平台集成流将所有你最喜欢的足球比赛放到你的谷歌日历中呢?
因为有很多移动应用,这个博客可能看起来有点不必要,对吧?
的确如此,但是你总是要检查你最喜欢的球队的比赛应用程序,我经常忘记这一点(真是个球迷)…。当它出现在你的日历上时,你会得到提醒,你就不会再错过一场比赛了!
最后,网购返利,我只想向您展示如何在云平台集成流中处理HTTP(s)请求、ZIP文件、CSV文件、消息映射和邮件控件。这就是这个博客的主要原因。
那么它是如何工作的呢?
我们将通过执行HTPP请求获取的zip文件将包含一个特定格式的CSV文件。
此文件包含比利时国家联赛的所有足球比赛。
此zip文件由比利时皇家足球协会提供,可在此处找到:
当您下载zip文件并打开CSV文件时,你会看到它的格式是这样的:
如果这是在谷歌日历中导入它的正确格式,那就太好了。但事实并非如此。
谷歌日历格式,可以在这里找到:
看起来像这样:
在我们对CSV文件的流程进行了所需的转换后,我们会给自己发送一封电子邮件,其中包含最终和正确格式的CSV文件,人工智能书,我们可以导入我们的谷歌日历。
在我们开始构建我们的CPI流程之前,我想给你一个快速的流程概述。这表明我们可以轻松快速地通过云平台集成构建这样一个流。
正如你所看到的,这根本不是一个巨大的流。所以,让我们开始构建它。
我们将把我们的流程分成7小段。
简而言之,这7小段解释为:
这些是我们将执行的小步骤,有一个工作的集成流,为我们提供我们的足球日历。
我们要做的第一件事是提供一个端点,用户可以在该端点上执行POST请求。
这是通过使用发送方控件和HTTPS连接到开始消息。
当您选择HTTPS连接时,提供以下值:
接下来我们将使用路由器来检查和处理我们的X-CSRF令牌。
以下路由器确保只有当您使用有效的X-CSRF令牌执行POST请求时,才能继续流。
如果不是POST请求,您将被带离。当它是没有(有效)X-CSRF-Token的POST请求时,您将得到一条禁止的错误消息。当它是一个带有有效X-CSRF-Token的POST请求时,您可以继续流程。
所以当我们拥有路由器控制时,您可以看到1被指定为默认路由,2持有引导请求的逻辑。
选择第一条路由并选中默认路由复选框。
选择第二条路由并选择非XML值作为表达式类型。
条件持有引导错误请求的逻辑:
当用户请求一个足球时对于他最喜欢的团队,他需要发送一个特定的有效负载。
Post请求的这个有效负载具有以下结构:
当Post请求通过路由器X-CSRF-Token检查时,这些值将通过Groovy脚本读取。此脚本将包含以下逻辑:
所有有效负载属性存储在不同的属性中,并在流的下一部分中可用。
因此,现在我们知道了用户的首选项,我们可以获取包含所有匹配项的CSV文件的ZIP文件。
为此,我们进行了一个本地集成过程,以使我们的流有一点更容易理解和更大。
因此首先,添加本地集成过程控件:
在这里我们放置了以下控件:
A.启动事件
B.请求回复
C.ZIP解压缩
D.句柄编码
E.CSV到XML转换器
F.XML到JSON转换器
G.结束事件
A.很明显,启动事件只是启动事件。
B.下一步我们从我们的请求-回复控件绘制到接收器控件的HTTPS连接。
这具有以下属性:
您可以从中获取ZIP文件的URL:
如何查找URL(可选)
当您转到以下URL时:
您在浏览器控制台中打开您的网络选项卡。
您下载ZIP文件,如图所示本博客简介
您在浏览器的"网络"选项卡中过滤网络请求natresdownP.zip文件"
然后您将找到URL。
C.放置ZIP解压缩控件。
此控件将自动解压缩您的ZIP文件。
D.处理编码
根据您的文件编码方式,如果不正确地处理这个编码,最后可能会有一些奇怪的结果。
例如:
如果我们不处理这个编码,Standard de Liège将导致Standard de Liège
要处理这个问题,我们创建下面的Groovy脚本,并在解压缩ZIP文件后调用它:
这里是CSV文件是用windows-1512编码读取的。
接下来所有的行又被一个换行符连接起来\n。
最后我们得到了一个正确编码的CSV。
E.CSV到XML转换器。
因为ZIP文件中的CSV文件有一个特定的格式,我们创建了一个XSD文件,并将其上传到我们的CPI流中。
首先,您在您的计算机上创建了一个文件,并将以下内容放入其中。这个XSD模式保存CSV文件格式的结构。接下来将其另存为:收入匹配.xsd
将CSV To XML Converter控件放入流中,按select按钮上载创建的XSD文件。
下一步在XSD中目标元素的路径中:
选择分号(;)作为字段分隔符。
选中排除第一行标题复选框。
F.XML To JSON Converter。
自我喜欢使用JSON,我会将这个XML转换成JSON。
所以我放置了一个XML到JSON控件,并提供以下配置:
G.End Event。
我们用和End Event控件结束本地集成过程。这将使我们返回到我们的主集成过程。
接下来,您可以在读取传入负载的Groovy脚本之后,手机免费建站,在流程调用控制中调用它。在这里的配置中,您选择您先前创建的本地集成过程。
接下来我们将在第二步中根据帖子正文中提供的团队筛选匹配项。
我们在本地集成过程中使用从CSV文件中的数据创建的JSON。
此筛选过程在Groovy脚本中发生。
我们得到属性从我们的流中,我们在第2步中设置,在这里我们读取传入的有效负载。
接下来我们根据提供的团队过滤JSON中的匹配项。
我们在正确的提供的分区中搜索团队,并选择提供的团队的匹配项。
最后我们创建一个最终的JSON对象并将其传递给我们的消息体,以便在我们流程的下一步中使用它。
由于下一步将使用消息映射控件,因此我们已经将JSON转换为XML格式。为此,我们将向XML中添加一个根元素。因此,请确保选中复选框。
通过此消息映射,我们希望在CSV输出文件中放置筛选的匹配项。
为此,我们在流中放置一个消息映射控件。
放置控件后,选择它并按它旁边的"+"号。
这将要求您输入映射名称,命名:FilteredMatchesToOutgoingCalendarCSV
您将看到以下屏幕:
在添加源消息和目标消息之前,我们将创建两个新的XSD架构。
创建以下XSD架构并命名:筛选器匹配.xsd
这一个看起来与我们先前创建的XSD模式相似,但在根目录下略有不同元素和元素数据。我们在Groovy脚本中将其命名为data,然后添加根元素。
第二个XSD模式是最终输出的模式。谷歌日历使用的格式。创建此XSD架构并将其命名为:外出日历csv.xsd