问题标签 [openwhisk]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
110 浏览

node.js - Openwhisk 和 Node-red 问题

我正在尝试同时使用 node-red 和 openwhisk,以便我可以从 node-red 调用 openwhisk 操作。我为此使用 node-red-node-openwhisk ( https://www.npmjs.com/package/node-red-node-openwhisk )。我在本地与 vagrant 一起在 bluemix 之外使用 openwhisk。我正在尝试根据本教程完成这项工作: https ://github.com/kpavel/openwhisk-light 但这似乎是不可能的,因为在此命令之前我还可以

我得到这个:

此外,我无法将 openwhisk 节点设置为在我的节点红色环境中工作,因为无论我使用什么 apihost,我都会遇到错误。有什么建议么?

0 投票
1 回答
383 浏览

openwhisk - 由于名称冲突而无法创建操作,但现有操作没有此名称?

从命令行创建新的 OpenWhisk 操作,将返回以下错误。

查看已部署的操作,我看不到另一个同名操作。

此错误消息的原因是什么?

0 投票
1 回答
567 浏览

openwhisk - 无法从侦听通用 Kafka 实例的 openwhisk kafka 提要创建触发器

我在 Ubuntu 16.04 桌面上进行了 openwhisk 本地安装。操作、触发器、规则和警报触发器正在工作。

我克隆了 git 存储库https://github.com/apache/incubator-openwhisk-package-kafka并依次运行以下命令: installCatalog.sh 、 gradlew :distDocker 、 installKafka.sh

然后我尝试创建一个触发器:

我正在关注自述文件的这一部分:“创建一个监听通用 Kafka 实例的触发器”

我正在重新使用作为 Openwhisk 安装的一部分创建的 Kafka 实例,并创建了一个名为“test”的主题 - 我可以使用 kafka 命令行工具发布/使用该主题。

触发器创建失败(它删除触发器,说资源不存在)。

我观察到的一件事是在 /guest 下创建了以下软件包:

我确实将提要名称改为/guest/messaging/kafkFeed,只有kafkaFeed等,但结果略有不同:

给出一个 JSON 输出说“错误”:“请求的资源不存在。”

寻求任何帮助

0 投票
1 回答
168 浏览

node.js - OpenWhisk 返回整个响应对象,而不仅仅是数据

我有一个返回响应对象的 OpenWhisk 操作,因为我希望能够控制标头和 HTTP 状态代码。我的操作返回如下内容:

我从命令行将操作部署在一个包中:

并将其作为 API 在 IBM Cloud Functions 上公开:

但是当我使用 访问 API 调用时curl,我得到了整个响应对象,而不仅仅是数据:

我期待得到公正{ x: 1 }

我需要做什么来解决这个问题?

0 投票
1 回答
482 浏览

openwhisk - 从 OpenWhisk (IBM Cloud Function) 操作返回二进制 HTTP 响应

我想在 IBM Cloud Function 中使用 OpenWhisk 通过 HTTP 返回驻留在(IBM Cloud)ObjectStorage 中的二进制文件。

这可能吗?在我看来,OpenWhisk 似乎只支持 JSON 作为操作的结果。

这是我正在使用的代码(get_object_storage_file 返回二进制数据):

0 投票
2 回答
198 浏览

python-3.x - bluemix 上的 python 调度程序

我在 python 中使用 schedule 包,每 15 秒调用一次函数,并希望在 IBM Bluemix 上运行此代码。已使用 -no-route 选项将应用程序推送到 Bluemix,尽管应用程序已部署到 Bluemix,但 Bluemix 无法启动应用程序

以下是我尝试过的示例代码

此应用程序的 Bluemix 日志中的消息:

过了一会儿,我在日志中看到了这条消息

Python版本:3.4.4

0 投票
1 回答
1159 浏览

openwhisk - Is there a way to access OpenWhisk logs from the API?

I want to programatically dump logs from OpenWhisk in to an external service. I can do this by capturing log output and then posting it at the end of every action but this adds overhead to my function.

Is there a way to get this data from the OpenWhisk API similar to wsk activation logs ACTIVATION_ID?

0 投票
1 回答
188 浏览

java - 如何从 Openwhisk Java Action 中读取文件

我正在尝试使用 openwhisk 云函数来利用一些现有的 java 代码。代码需要读取本地文件。IBM Cloud 上的 Java 操作是否支持此功能?尽管该文件包含在 jar 文件中,但应用程序无法访问该文件。

0 投票
0 回答
148 浏览

facebook - 将 OAuth 与 Facebook 一起使用,作为 IBM Cloud Functions 托管 API 的提供者

我正在使用 IBM Cloud Functions (OpenWhisk) 并尝试通过 OAuth 以 Facebook 作为提供者来设置身份验证。我已经使用 Facebook 设置了一个应用程序,我能够成功连接并获取我的令牌,并且我能够通过获取基本个人资料信息(姓名和用户 ID)来验证这一点。

当我在 IBM Cloud Functions API 中启用 OAuth 时,我的问题就开始了。我从通话中得到了一个 HTTP 代码 500,但关于实际问题的信息很少。

仪表板中唯一说明的是:

您可以通过 OAuth 2.0 标准控制对 API 的访问。首先要求最终用户通过 IBM Cloud App ID、Facebook、GitHub 或 Google 登录。然后在每个 API 请求的 Authorization 标头中包含相应的 OAuth 令牌。令牌的真实性将通过指定的令牌提供者进行验证。如果令牌无效,请求将被拒绝并返回响应码 401。

有了这些信息,我知道我需要使用 Authorization 标头传递令牌。我最好的猜测是在验证令牌时调用在某处失败。

我正在使用 Vue 和 Vue-axios 来执行 API 调用。我当前的通话如下所示:

我尝试在令牌前面添加不记名/不记名或令牌/令牌(我读过的一些帖子表明您应该这样做),但这对响应没有影响。

如果我从 Cloud Functions 端禁用 OAuth 身份验证,则上面的代码可以正常工作并正确检索数据(带或不带标头选项)。

从 Chrome 开发工具看来,令牌已正确添加到请求中,因为请求标头具有带有令牌的 Authorization 标头。

我对 OAuth 或 IBM Cloud Functions 不太熟悉,因此问题可能很容易解决。但是,我无法找到清楚地向我展示我应该如何设置它的文档。我也找不到任何日志或有关此处实际失败的更多信息。我在这里遗漏了一些明显的东西吗?

凯蒂尔

0 投票
1 回答
502 浏览

openwhisk - IBM Cloud Functions WebAction 给出空响应 (204)

我在使用 IBM Cloud Functions 时遇到了奇怪的行为。我有一个启用 Web 的操作 (WebAction),我不需要对其进行身份验证。我使用 Postman(和浏览器)来测试这个新的 REST 端点。(下图左侧)结果是空的,实际的204 No Content 响应。

但是当我监控 Action 时,我可以看到它已被调用并返回了预期的 JSON(下图右侧)。所以代码被正确执行。

在此处输入图像描述

当我执行命令行调用时:

我确实看到了预期的结果。我应该提供额外的标题吗?

这是否与同步(阻塞)或非阻塞有关?