Php 通过POST将XML发送到另一台服务器

Php 通过POST将XML发送到另一台服务器,php,javascript,xml,post,Php,Javascript,Xml,Post,我正在处理一个非常糟糕的API,它要求我发送以下XML: <?xml_version string(335) ""1.0" encoding="utf-16"?> <GetTicketAction xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <CompanyName>*name*</Compa

我正在处理一个非常糟糕的API,它要求我发送以下XML:

<?xml_version string(335) ""1.0" encoding="utf-16"?>
<GetTicketAction xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <CompanyName>*name*</CompanyName>
    <IntegrationLoginId>*id*</IntegrationLoginId>
    <IntegrationPassword>*password*</IntegrationPassword>
    <SrServiceRecid>*recordId*</SrServiceRecid>
</GetTicketAction>

多年来,这个API让我痛苦地慢慢发疯,我发现它不希望我通过标准的CURL模式发送XML

$data = array(
    "actionString" => $xml
);
相反,我要做的是:

$data = 'actionString=<?xml_version string(335) ""1.0" encoding="utf-16"?>
<GetTicketAction xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <CompanyName>*name*</CompanyName>
    <IntegrationLoginId>*id*</IntegrationLoginId>
    <IntegrationPassword>*password*</IntegrationPassword>
    <SrServiceRecid>*recordId*</SrServiceRecid>
</GetTicketAction>'

$data='actionString=在
应用程序/x-www-form-urlencoded
格式消息中发送XML?天哪,这是一个极其糟糕的API
这需要加密
表明它希望您通过HTTPS发送-您尝试过吗?你也可以展示你的PHP/curl代码吗?做一些甚至可以算作API的请求吗?是的。通常情况下,我会把注意力集中在糟糕的文档上,但这似乎是克图鲁本人写的。@Lusitanian取决于您对首字母缩略词的解释。如果你认为这意味着可怕的编程白痴,那么是的,我会说是的。