Indesign Server soap response



我需要调试一个肥皂网络服务,但我不知道从哪里开始。这返回了错误的数据,我需要找到原因。它正在 http://localhost:18385 上运行,我可以控制我发送的参数,但不知道端点文件。如果我在浏览器上写 http://localhost:18385,我会得到

 <?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:IDSP="http://ns.adobe.com/InDesign/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<SOAP-ENV:Fault SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<faultcode>SOAP-ENV:Client</faultcode>
<faultstring>HTTP GET method not implemented</faultstring>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

提前致谢

最简单的调试方法是使用Postman或SoapUI等应用程序,这样您就可以设置发布的内容并详细查看响应。

您收到错误,因为您在脚本中使用了 GET,InDesign Server 需要 POST 请求,内容类型为 xml/text,正文设置为 Soap 调用,例如

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soap="http://ns.adobe.com/InDesign/soap/">
    <soapenv:Body>
                         <soap:RunScript>
                             <runScriptParameters>
                                 <scriptLanguage>javascript</scriptLanguage>
                                 <scriptFile>C:InDesignscriptfile.jsx</scriptFile>
                                 <scriptArgs>
                                    <name>myParameter</name>
                                    <value>305</value>
                                 </scriptArgs>
                             </runScriptParameters>
                         </soap:RunScript>
     </soapenv:Body>
</soapenv:Envelope>

你没有给出太多关于你到底需要什么的细节。

如果你问 WSDL 路径是什么,它应该是:http://localhost:18385/service?wsdl

如果需要调试 SOAP Web 服务响应,可以使用 SoapClient 或使用 SoapUI 创建 PHP 测试脚本。

最新更新