Ibm cloud 如何在Bluemix Watson视觉识别中处理服务绑定上的API密钥再生?

Ibm cloud 如何在Bluemix Watson视觉识别中处理服务绑定上的API密钥再生?,ibm-cloud,ibm-watson,watson,visual-recognition,Ibm Cloud,Ibm Watson,Watson,Visual Recognition,我已经将Watson视觉识别服务绑定到Bluemix应用程序。我正在使用烟雾测试管理应用程序部署 我在烟雾测试中包括的检查之一是功能,它依赖于视觉识别服务。由于冒烟测试在部署后立即运行,并且由于看起来视觉识别服务API密钥在重新绑定时重新生成,然后需要一段时间才能生效,因此冒烟测试失败。等待生效的过程是有记录的,但这会让人头疼。我尝试了两种解决方法: 在我的代码中添加一个重试循环,以等待视觉识别服务密钥有效。然后,我的烟雾测试可以调用它,确保在获得有效密钥之前,不会有任何东西被推送到现场。我可

我已经将Watson视觉识别服务绑定到Bluemix应用程序。我正在使用烟雾测试管理应用程序部署

我在烟雾测试中包括的检查之一是功能,它依赖于视觉识别服务。由于冒烟测试在部署后立即运行,并且由于看起来视觉识别服务API密钥在重新绑定时重新生成,然后需要一段时间才能生效,因此冒烟测试失败。等待生效的过程是有记录的,但这会让人头疼。我尝试了两种解决方法:

  • 在我的代码中添加一个重试循环,以等待视觉识别服务密钥有效。然后,我的烟雾测试可以调用它,确保在获得有效密钥之前,不会有任何东西被推送到现场。我可以看到,该密钥对免费通话的有效性相对较快(大约在30秒内),但随后需要几分钟才能附加到付费通话的授权。等待密钥对付费呼叫有效会使我的部署增加大约五分钟,这并不理想,因为我们的团队每天会推送很多次,部署可以开始备份
  • 创建永久凭据并使用用户提供的服务将其绑定到我的应用程序。这意味着部署可以立即开始使用该密钥,这很好,但我绕过了正常的服务绑定机制,这似乎是错误的

有没有我错过的选择

如果服务正在重置您的凭据,我将以“未绑定模式”运行

,将服务绑定到应用程序的定义如下:

将服务实例绑定到应用程序会触发为服务实例设置凭据并在VCAP_SERVICES环境变量中传递到应用程序运行时的凭据。有关在应用程序中使用这些凭据的详细信息,请参阅使用绑定服务实例

它提供了一种通过VCAP\u SERVICES环境变量管理和使用服务实例的有用方法

如果重新绑定服务需要>=5分钟,重置凭据,并且总体上对部署过程造成不便,我会将其从应用程序中解除绑定,并通过用户提供的环境变量访问凭据