如何使用soap请求.Net创建otrs票证

时间:2013-08-08 12:15:37

标签: c# .net otrs

我已经创建了一个解决方案。 添加了WSDL文件。 这继续弹出以下错误“需要长度”。

我尝试使用post中的上述代码(但似乎无效。 我们在哪里指定操作名称?

- Anand

1 个答案:

答案 0 :(得分:2)

在使用java c#.net等工作之前,你需要让SOAP xml正确。

操作名称作为标签添加到soap body元素中。 例如,您的操作名称是OTRS UI Web Service中指定的createMyOTRSTicket。 发送的SOAP请求应如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" 
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
    <createMyOTRSTicket xmlns="WS">          
         <UserLogin>MyUserName</UserLogin>
         <Password>MyPassword</Password>
             <Queue>'some queue name'</Queue>
             <State>'some state name'</State>
             <Priority>1</Priority>
             <!-- ...etc.. --> 
         <Article>
             <Subject>some subject</Subject>
             <Body>some body</Body>
             <ContentType>text/plain; charset=utf8</ContentType>
        </Article>
    </createMyOTRSTicket >
</soap:Body>
</soap:Envelope>

请参阅API了解哪些元素需要以及哪些元素是TicketCreate here

的可选元素

应将Soap消息发送到/nph-genericinterface.pl/Webservice/CreateTicketWS,其中CreateTicketWS是Web服务的名称。 另请注意,属性xmlns =“WS”是指您在“网络传输”配置中指定的命名空间,该配置也位于GenericInterface Web服务管理中。 我希望这可以帮助你。对不起,对于刚接触SOAP和OTRS的人来说,这可能有点令人困惑。