云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

域名解析_数据库修改字段长度_超低折扣

小七 141 0

本系列的前一篇文章:发现SCP工作流-使用邮递员。

本篇文章是系列文章的一部分,可在此处找到指南:发现SCP工作流。

在本篇文章中,我将介绍我编写的一个小型代理服务,用于处理启动新工作流实例的细节(请参阅发现SCP工作流-实例启动)。

我为什么要编写它?嗯,有很多原因。以下是一些听起来很明智的建议:

在我的发现之旅中,大数据解决方案,它使我能够封装我所涵盖的内容,使我能够在我所做的更广泛的背景下,将启动新工作流实例的表面积保持在最低限度这是一种隐藏身份验证详细信息的方法,特别是当希望从SCP连接服务的上下文外部连接到工作流API时它结束了XSRF令牌的过程,这样我就不必去处理甚至看发生了什么

这里有一些更有趣的:

它允许我继续我的旅程,在Google云平台(GCP)上探索Google云功能,我已经使用了这个平台,但在一个不同的上下文中:在Google上编写操作处理程序-框架对于googleassistant平台,它是googlehome设备的底层等等同样,它让我探索如何使用节点.js图书馆,学习外面的东西我喜欢云计算和网络终端的"第二个主机时代"的想法(我完全是在Chrome操作系统上构建的,大数据需要学什么,网站用云服务器,没有工作站本地活动),GCP和SCP的结合非常有吸引力代理让我探索如何在云的不同区域划分工作的可能性

这最后一个原因对我来说很重要-在解决方案的设计时间和运行时间方面,在不同的平台(SCP、GCP和其他平台)有太多的选择,除非你尝试,否则很难做出明智的决定在这篇文章之后,为了便于阅读,一些行(代码、URL等)被拆分了。)

我的想法是,我想从不同的流程中启动工作流实例,并希望用一种简单的方法来实现这一点,同时尽量减少麻烦。就保护而言,我使用的是一个简单的共享秘密,以字符串的形式,调用者传递,接收者在继续之前验证。

我还想写和忘记,并在云中完成所有操作。

在继续之前,值得花一分钟在谷歌云功能允许我做的事情上。我可以编写无服务器函数(类似于AWS Lambda)并维护存储在GCP上的git存储库中的代码(类似于git存储库在SCP上的可用性)。我可以用JavaScript编写一个函数节点.js我可以在函数运行时仿真器中测试它,然后使用对git存储库中源代码主分支的直接引用将它部署到GCP,我也在云中编辑和测试了整个项目,大数据用什么数据库,在我的googlecloudshell实例上使用了vim的组合,当然还有sapwebide。毕竟,我们现在肯定已经进入了第二个主机时代!

不管怎样,谁知道呢,将来我可能会把这个代理功能迁移到其他平台或服务上,但目前还可以。

Google云函数的入口是一个基于Express的处理程序,它和许多HTTP服务器端框架一样,有请求对象和响应对象的概念。值得一提的是,这种简单的模式还影响了ABAP和ICF平台早期备用调度层(ADL)的工作。

我为这种环境编写函数的方式是拥有一个相对简单的文件,导出一个"handler"函数,然后将繁重的工作分配给另一个模块。这个节点.js需求/导出概念是其基础。我们很快就会详细地看到这一点。

我一直在想,是在演示源代码之前先演示源代码更好,还是先演示源代码让读者了解代码的意图更好。在这种情况下,演示很简单,值得先展示。

首先,我将强调我在哪里真正使用这个代理,在一个有趣的实验中,包括根据你喝什么推荐啤酒,这是Untappd的API提供的,在SCP工作流上下文中显示:

我有一个称为"untappdrecommendation"的工作流定义,当另一个机制看到我在Untappd上签入啤酒时,我会启动该定义的实例。

该机制是一个Google应用程序脚本,它在我签入新啤酒时轮询与我的Untappd签入和通知相关的RSS提要(我确实是从使用IFTTT开始的,但是我的经验不是很好,所以我自己使用了IFTTT)。一旦它看到一个新的签入,它就使用untappdapi获取相关信息,然后通过本文的主题代理调用工作流API。下面是googleapps脚本的摘录:

让我们看看initiateWorkflow函数在做什么:

它接收到一个关于特定啤酒的map*信息然后它向代理服务发出POST-HTTP请求,传递秘密令牌(前面提到)工作流定义ID"UnappdRecommendation"包含啤酒信息的上下文,对于工作流实例

*有些人称它们为对象…如果它们是"被动的"(如果它们除了JavaScript对象内置方法之外没有其他方法),我更喜欢称它们为映射。术语map在其他语言中用于这种结构。