类别

版本

您正在查看版本9.8的RapidMiner Hub文档点击这里查看最新版本

创建web服务

什么是web服务?

参见视频介绍到web服务。

在RapidMiner上下文中,aweb服务是一个过程可以通过URL调用。URL是一个链接到RapidMiner AI Hub,类似于以下内容:

http://RMServerHost:8080/api/rest/process/YourServiceName?customerID=3

在本例中,URL可以将查询参数作为输入customerID = 3,并以您选择的格式提供结果,包括以下格式:

  • JSON
  • XML
  • 超文本标记语言
  • OData
  • 和其他…

要查看结果,您必须将自己验证为已注册的用户,或RapidMiner AI Hub必须配置为接受查询匿名用户。匿名用户可用的web服务的URL将采用以下略有不同的形式:

http://RMServerHost:8080/api/rest/public/process/YourServiceName?customerID=3

注意这里提到的公共在URL中。

但是,在典型的web服务场景中,您不会自己调用这个URL。您将构建一个应用程序来实现一些有用的目的,该应用程序将调用URL,并通过一个令牌。Web服务可以很容易地嵌入到网页和其他应用程序中。它们使得通过HTTP提供RapidMiner进程的结果成为可能。

开始之前

在创建web服务之前,请确保:

  • RapidMiner AI Hub是安装
  • RapidMiner Studio是连接到远程存储库。
  • 要实现为web服务的流程保存在远程存储库
  • 您的流程被设计为将所需的数据传递到第一个结果(“res”)端口。web服务只从第一个端口返回数据。

如果您还没有要实现为web服务的流程,或者您不确定如何构建这样的流程,那么您可能会发现通过示例进行操作很有帮助。在预见性维护,我们显式构建两个流程,在本文的其余部分中,它们将作为web服务实现。

一步一步地

参见视频介绍到创建web服务,包括对匿名用户以及在向RapidMiner AI Hub提供公共访问时需要采取的一些安全预防措施。

预见性维护结论,我们将两个新进程保存到RapidMiner AI Hub存储库中:

让我们按照以下步骤为它们创建web服务:

  1. 创建web服务。选择以下入口点之一:

    • 在RapidMiner Studio中,在远程存储库中,右键单击进程并选择浏览打开RapidMiner AI Hub上的Repository Browser。点击作为Web服务导出
    • 在RapidMiner AI Hub上,选择存储库>浏览存储库,导航到感兴趣的进程,选择它,然后单击作为Web服务导出
    • 在RapidMiner AI Hub上,选择流程>Web服务,然后点击创建新的web服务

    其中,第一种可能是最好的,因为它直接带你进入感兴趣的过程。

    下面的截图显示了编辑Web服务第二个过程的对话框,Predictive_Maintenance_web_service_with_parameters。请注意,RapidMiner AI Hub在此过程中自动检测宏,并分配一个URL查询参数名字都一样。如果您愿意,可以更改查询参数。也可以更改服务ID;它不必与进程名相同。然而,数据源必须准确地定位到RapidMiner AI Hub上的进程,并且宏名称必须与在该进程中编写的宏名称相同。如果你看下拉列表输出格式,您将看到有许多选项。在这个例子中,我们选择了“JSON”;RapidMiner AI Hub设置相应的mime类型。

  2. 编辑web服务。请确保填写以下字段:

    • 服务ID: web服务的名称,因为它将出现在URL中。它不必与进程名相同。
    • 数据源:进程在RapidMiner AI Hub上的位置
    • 输出格式:输出格式。选择包括JSON、XML、HTML、OData等。
    • 参数绑定: URL查询参数,如果存在,可以不与宏名相同。
  3. 点击提交将流程保存为web服务。

下一个打开的页面(流程>Web服务)按其ID列出可用的web服务。在这里,您有机会测试web服务,并在必要时编辑web服务。您也可以删除它。

与参数

测试服务时Predictive_Maintenance_web_service_with_parameters,使用JSON输出,结果如下。测试…的功能URL查询参数,可修改该值,单击测试

一旦web服务准备好了,就可以从浏览器中通过直接的联系列在页面的右侧,或者您可以按照下面的说明将结果嵌入到