【问题标题】:IBM Bluemix - Kitura Swift - is missing a required environment variable: 'OPENAPI_SPEC'IBM Bluemix - Kitura Swift - 缺少必需的环境变量:“OPENAPI_SPEC”
【发布时间】:2017-02-20 14:21:19
【问题描述】:

我暂时被困住了。我无法获取移动项目的源代码,也不知道问题出在哪里。我所有的研究都没有阳性结果。

我使用 IBM Bluemix 的目的是为自己开发一个仅使用 Swift(服务器端 + iOS)的小项目,因为我是 iOS 移动开发人员。

当我尝试获取移动项目 (iOS) 的代码时,出现以下错误:

Error Notification:
The Cloud Foundry App 'XXX' is missing a required environment variable: 'OPENAPI_SPEC'.

我想使用适用于 iOS 的 OpenWhisk SDK。我不知道在哪里设置变量 OPENAPI_SPEC 以及放入什么值。

我设置了一个从“Runtime for Swift - Kitura”开始的 Cloud Foundry 应用程序和一个名为“Code Starter - OpenWhisk”的移动项目。

你能帮我一些建议或一些样本吗? 谢谢!

【问题讨论】:

    标签: swift ibm-cloud ibm-mobile-services openwhisk kitura


    【解决方案1】:

    如果您在移动项目中添加了 Swift 服务器端 Compute,则需要在后端添加一个名为 OPENAPI_SPEC 的环境变量,以指向概述 API 的有效 Open API swagger 文档。

    这样当您下载项目时,它会自动生成一个与您后端的 Open API 对应的 SDK。

    例如,设置环境变量的方法如下:

    这是一个有效的 API 文档,它正在使用(虽然不是最优雅的开放 API 兼容格式,但它可以工作)。

    https://updatesdk.mybluemix.net/explorer/swagger.json

    这个想法是“项目”概念采用计算运行时(Cloud Foundry、Docker 等)的抽象视图,并且只关心它公开了一个符合 Open API 规范的 API。使用该定义的 Open API 规范,您可以在下载“项目”时为它动态生成一个 SDK(适用于 iOS、Android 等)。


    如果您的后端 Compute 目前没有公开 Open API 规范,而您只想下载适用于 iOS 的 OpenWhisk 的代码,您可以暂时将该后端 Compute 与您的移动项目解除关联,它应该会下载代码。如果您曾经在该后端之上构建并希望在将来重新连接它,您可以添加它并在以后重新下载(执行 git diff 或使用 Bluemix CLI SDK 插件从您的 Open API 规范下载一个 SDK在项目生命周期的后期)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-05
      • 2016-04-04
      • 1970-01-01
      • 2021-12-16
      • 2020-04-11
      相关资源
      最近更新 更多