1
在Bluemix上,我已經成功連接到一個Cloud Foundry應用程序(Python buildpack),並在過去幾個月中使用綁定到它的Watson機器學習(WML)服務。但是,從今天早上開始,嘗試調用服務時收到SSL錯誤。錯誤可能在今天之前開始,我今天早上才注意到它。IBM Watson機器學習入站SSL錯誤
我使用Python請求從應用程序調用WML。我也嘗試使用Postman致電該服務。
下面是相關的Python代碼(已經幾個月工作得很好):
import requests
spssUrl = 'https://palbyp.pmservice.ibmcloud.com/pm/v1/{model}'
spssModelscore = 'score/bikeride'
spssParams = {"accesskey": accessKey, "metadatatype": "score"}
spssHeaders = {"Content-Type": "application/json"}
spssResults = requests.post(spssUrl.format(model = spssModelscore), data=json.dumps(modelPayload), params=spssParams, headers=spssHeaders)
這裏的錯誤我看到:
requests.exceptions.SSLError
SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)
有沒有什麼最近更改?在我的應用/客戶端中是否需要額外配置以便能夠連接到該服務?
更新
我發現我能夠通過對要求禁用SSL驗證(添加verify=False
)成功調用WML。
spssResults = requests.post(spssUrl.format(model = spssModelscore), data=json.dumps(modelPayload), params=spssParams, headers=spssHeaders, verify=False)
顯然這不是解決此問題的正確方法。任何指導?我想知道WML最近是否開始使用不在requests
正在使用的CA列表中的更新的SSL證書 - 並且以某種方式無法驗證。
更新
發現SSL證書已過期。