SOAP-запрос в php не передается в ServiceNow - PullRequest
0 голосов
/ 29 ноября 2018

Я создаю веб-форму для создания инцидентов в ServiceNow.

Хотя SOAP-запрос, созданный мной в Boomerang / SOAPUI, работает отлично, он не работает, когда я пытаюсь реализовать его в php.

<x:Envelope xmlns:x="http://schemas.xmlsoap.org/soap/envelope/" xmlns:hlr="http://www.service-now.com/hlr_incident_api">
<x:Header>
    <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
        <wsse:UsernameToken>
            <wsse:Username>INTSDPMR</wsse:Username>
            <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">ManufacturingW3bf0rm</wsse:Password>
        </wsse:UsernameToken>
    </wsse:Security>
</x:Header>
<x:Body>
    <hlr:createIncidentMethod>
        <hlr:header>
            <hlr:transactionid/>
            <hlr:sourcesystemid>keyuserwebform</hlr:sourcesystemid>
            <hlr:targetsystemid>SNOW</hlr:targetsystemid>
        </hlr:header>
        <hlr:content>
            <hlr:caller_id>USERID</hlr:caller_id>
            <hlr:category>?</hlr:category>
            <hlr:subcategory>?</hlr:subcategory>
            <hlr:business_service>?</hlr:business_service>
            <hlr:ci_name>?</hlr:ci_name>
            <hlr:ci_sysid>?</hlr:ci_sysid>
            <hlr:state>?</hlr:state>
            <hlr:impact>?</hlr:impact>
            <hlr:urgency>?</hlr:urgency>
            <hlr:assignment_group>?</hlr:assignment_group>
            <hlr:assigned_to>?</hlr:assigned_to>
            <hlr:short_description>?</hlr:short_description>
            <hlr:close_code>?</hlr:close_code>
            <hlr:close_notes>?</hlr:close_notes>
            <hlr:service_offering>?</hlr:service_offering>
            <hlr:u_affected_user>?</hlr:u_affected_user>
            <hlr:description>?</hlr:description>
            <hlr:correlation_id>?</hlr:correlation_id>
        </hlr:content>
        <hlr:attachment>
            <hlr:file_name>?</hlr:file_name>
            <hlr:mime_type>?</hlr:mime_type>
            <hlr:base64string>?</hlr:base64string>
        </hlr:attachment>
    </hlr:createIncidentMethod>
</x:Body>

Это php-код, который я пытаюсь использовать:

    $request = array(

        'header'=>array(
                'transactionid' => '',
                'sourcesystemid' => 'keyuserwebform',
                'targetsystemid' => 'SNOW'
            ),

        'content'=>array(
            'caller_id' => 'USERID',
            'category' => '?',
            'subcategory' => '?',
            'business_service' => '?',
            'ci_name' => '?',
            'ci_sysid' => '?',
            'state' => '?',
            'impact' => '?',
            'urgency'  => '?',
            'assignment_group' => '?',
            'assigned_to'  => '?',
            'short_description' => '?',
            'close_code' => '?',
            'close_notes' => '?',
            'service_offering' => '?',
            'u_affected_user' => '?',
            'description' => '?',
            'correlation_id' => '?'
    )

);

И единственный ответ, который я получаю после создания запроса, равен NULL - так что этос чем я могу работать.

Можете ли вы помочь мне найти ошибку в коде php?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...