[英]PHP Soap client returning “WrongVersion” error. Works fine in Postman
我正在使用標准的PHP Soap Client向第3方服務發出SOAP請求,並且始終收到“ Soap Fault:錯誤版本”錯誤。
盡管如此,我仍然能夠獲得原始響應(使用$ client-> __ getLastResponse())及其返回的成功。 我嘗試將“ soap_version”選項設置為“ SOAP_1_1”和“ SOAP_1_2”,但仍然是相同的錯誤。 在新請求中,“ Content-Type”和soap名稱空間已正確更改,因此它正在應用更改。
我還禁用了wsdl緩存。
我認為這可能是針對SOAP 1.1的WSDL的問題,但是我嘗試使用“非WSDL”模式,並且給出了相同的錯誤。
如果我使用Postman發出相同的請求,並使用相同的消息和標頭,則一切正常,這使我認為PHP Soap Client進行了某些特殊性或驗證。
還有其他想法嗎?
找到了問題。 第三方未使用有效的SOAP消息進行響應,而是以純XML格式進行響應,這使SOAP客戶端無法處理該消息並給出該錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.