PHP SoapClient: öneki olmadan bir ad alanını ayarlamak

oy
0

PHP'nin SoapClient kullanarak bir WSDL SOAP hizmeti tüketen ediyorum. Oluşturulan XML aşağıdaki ad tanımları içerir:

<SOAP-ENV:Envelope
    xmlns:SOAP-ENV=http://schemas.xmlsoap.org/soap/envelope/
    xmlns:ns1=WebApplicationImport
    ....>

Ve bundan elemanları ns1ad tüm kodu bulunmaktadır ns1:elementName.

Servis sağlayıcı bu yanlış ve onlar WSDL bunun için bir gereklilik tanımlar rağmen öneki olmadan bu öğeleri istediğiniz söylüyor: xmlns:tns=WebApplicationImport elementFormDefault=qualified.

Bir çözüm XML göndermeden önce aşağıdakileri yapmaktır: $xml = str_replace(':ns1', '', $xml);. Bu çalışır, ancak açıkça kesmek ve ben dalaverecileri bir hayranı değilim.

Anlamanın bir yolu var mı SoapClient, öneki yok / varsayılan olarak belirli bir ad işlemek için? Ne elde etmek istiyorum olduğunu <SOAP-ENV:Envelope xmlns:SOAP-ENV=http://schemas.xmlsoap.org/soap/envelope/ xmlns=WebApplicationImport>, teorik olarak, bu ad tüm unsurları da öneksiz olmasını sağlayacak zarf, geri kalanını oluşturmadan önce. Bu benim için doğru ve geçerli bir çözüm gibi görünüyor.

Oluştur 24/10/2019 saat 12:57
kaynak kullanıcı
Diğer dillerde...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more