我一直在尝试创建一个串联的URL,以使用php curl在SOAPAction
POST中使用。
我尝试访问的SOAP Api遇到了一个有趣的问题。
如果我将httpheaders数组用作:
$header = array(
"Content-Type: text/xml",
"SOAPAction: http://tempuri.org/IProductsService/getProduct"
);
我没有问题。它经历了,响应正是我所期望的。
但是,如果我这样使用它:
$A = "ProductsService";
$B = "getProduct";
$soapAction = "SOAPAction: http://tempuri.org/I" . $A . "/" . $B;
$headerTest = array(
"Content-Type: text/xml",
$soapAction
);
它不起作用。 (是的,我需要使用肥皂动作上的I)
我尝试了各种不同的方法来执行此操作。在阵列中使用肥皂动作,而在阵列中不使用肥皂动作。从语法上讲,它是正确的。但是,我不断从api中获得响应,内容为"ActionNotSupported"
。它说由于contractFilter mismatch at the endpointDispatcher
而无法处理。
有人知道为什么吗?我可能做错了什么?