【问题标题】:How to get the activation ID of the action invoked in OpenWhisk?如何获取 OpenWhisk 中调用的操作的激活 ID?
【发布时间】:2017-05-24 01:02:30
【问题描述】:

当我们通过 CLI 调用操作时,我们会得到激活 ID 作为结果。但是当我们在 Bluemix 中为动作生成 API 并尝试调用 API 时,我只收到动作的结果。调用后如何获取action的激活ID?我们以后应该能够通过使用激活 ID 获得响应吗?

【问题讨论】:

  • 听起来您是在询问 OpenWhisk UI,而不是 CLI,下面的答案似乎集中在 CLI - 是吗?

标签: ibm-cloud openwhisk


【解决方案1】:

一个动作,在它的执行上下文中有它的激活 ID:它在环境变量中作为 __OW_ACTIVATION_ID 可用。

您可以在响应中返回此值 - 如果您使用 Web 操作或 API 网关并且能够发送自定义标头作为结果,您可以将其用作返回 id 的机制。或者直接返回 id 本身。

给定一个激活 ID,您可以稍后将其与激活 API 一起使用来检索结果。

听起来您想要一个非阻塞激活而不是请求/响应样式。为此,如果您不使用 webaction 或 API 网关,则默认调用机制是非阻塞的,它会向您返回激活 ID。

这里引用了 API https://github.com/apache/incubator-openwhisk/blob/master/docs/rest_api.md

【讨论】:

    【解决方案2】:

    如果您使用以下命令从 CLI 调用,您应该取回 激活 ID结果

    wsk action invoke --blocking the-action-name

    您可以获得从最新到最旧的激活列表:

    wsk激活列表

    有一个非常好的文档,包含大量细节并使用不同的语言 --> https://console.ng.bluemix.net/docs/openwhisk/openwhisk_actions.html#openwhisk_actions_polling

    【讨论】:

      猜你喜欢
      • 2017-08-07
      • 1970-01-01
      • 2018-01-04
      • 2013-01-08
      • 2022-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多