node-soap에서 wsdl 작업을 선택하는 방법

jdrucey

node-soap 패키지를 사용하여 다음 SOAP 서비스를 사용하고 있습니다. https://paymentsuat.mppglobal.com/interface/mpp/ipaypaymentpages/ipaypaymentpages.asmx?wsdl

iPayPaymentPagesSoap 포트의 경우 이름은 같지만 매개 변수가 다른 두 개의 조작이 있습니다.

설명 기능 node-soap을 사용하면 각 포트 유형에 대한 마지막 작업 만 표시됩니다. 호출되는 작업을 선택하는 방법이 있습니까?

<wsdl:portType name="iPayPaymentPagesSoap">
    <wsdl:operation name="CreateSession">
        <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
        Retrieves a Guid from the system populated with details. Used in conjunction with ipayment pages.
        </wsdl:documentation>
        <wsdl:input name="CreateSessionBySOAP" message="tns:CreateSessionBySOAPSoapIn"/>
        <wsdl:output name="CreateSessionBySOAP" message="tns:CreateSessionBySOAPSoapOut"/>
    </wsdl:operation>
    <wsdl:operation name="CreateSession">
        <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
        Retrieves a Guid from the system populated with user details. Used in conjunction with ipayment pages.
        </wsdl:documentation>
        <wsdl:input name="CreateSessionByGET" message="tns:CreateSessionByGETSoapIn"/>
        <wsdl:output name="CreateSessionByGET" message="tns:CreateSessionByGETSoapOut"/>
    </wsdl:operation>
</wsdl:portType>

렌더링 대상 :

{
    iPayPaymentPages: {
        iPayPaymentPagesSoap: {
            CreateSession: {
                input: {
                    affiliateId: "s:int",
                    password: "s:string"
                },
                output: {
                    CreateSessionByGETResult: {
                        Guid: "s:string",
                        ErrorNumber: "s:int",
                        ErrorMessage: "s:string",
                        targetNSAlias: "tns",
                        targetNamespace: "https://secure1.mppglobal.com/interface/ipaypaymentpages/ipaypaymentpages.asmx"
                    }
                }
            }
        }
    }
}

그러나 CreateSession을 CreateSessionBySOAP 매개 변수와 함께 사용하는 것을 목표로하고 있지만 node-soap의 기본값은 CreateSessionByGET입니다.

* 저는 WSDL을 제어 할 수 없으며 Node.js와 함께 SOAP를 사용하지 않을 것입니다.하지만이 경우에는 문제가 있습니다!

에딜 베르토 사무 디오

나는 동일한 동작에 갇혀있는 것 같습니다 .node-soap / lib / client.js에서 wsdl을 객체 또는 dom 객체로 사용하지만 wsdl : portTypes에서는 마지막 작업 요소 만 나타냅니다. 제 경우에는 이름이 같은 작업이 4 개 있으므로 해결 방법은 다음과 같습니다.

        soap.createClient(url, options, function(err, client) {

        var method = client.wsdl.definitions.services.[Service].ports.[Port].binding.methods['CreateSession'];
        var location = client.wsdl.definitions.services.[Service].ports.[Port].location;

        //change method $name, method input $name
        method.$name = 'CreateSessionBySOAP';
        method.input.$name = 'CreateSessionBySOAP';

        var def= client._defineMethod(method, location);
        //invoke the method
        def(args, options, function(err, result) {
           console.log(JSON.stringify(result));
        });
         console.log(client.lastMessage);
         console.log(client.lastResponse);
});

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

동일한 SOAP 헤더를 사용하여 WSDL 작업에서 반복되는 것을 방지하는 방법

분류에서Dev

C #의 SOAP wsdl에서 작업에 대한 중첩 된 complexType 매개 변수를 가져 오는 방법

분류에서Dev

100 개 이상의 클라이언트에서 사용중인 wsdl soap을 업데이트하는 방법

분류에서Dev

PHP Xpath : WSDL의 모든 메서드에서 작업 URL을 가져 오는 방법은 무엇입니까?

분류에서Dev

CXF 요청 인터셉터의 SoapMessage에서 WSDL 작업 이름을 얻는 방법

분류에서Dev

선택 태그에서 두 가지 다른 작업을 호출하는 방법

분류에서Dev

선택기를 사용하여 UITextField에 작업을 추가하는 방법

분류에서Dev

선택에서 여러 단락을 선택하는 방법

분류에서Dev

Java에서 wsdl을 찾을 수 없을 때 SOAP 웹 서비스를 사용하는 권장 방법은 무엇입니까?

분류에서Dev

항목 목록을 사용하여 SOAP 응답에 대한 WSDL 복합 유형을 정의하는 방법

분류에서Dev

tibco에서 Concrete WSDL을 만드는 방법

분류에서Dev

node-mysql에 삽입하는 동안 행 [0]을 선택하는 방법은 무엇입니까?

분류에서Dev

평균을 계산할 때이 패턴 작업을 수행하는 방법 : 표 T에서 선택

분류에서Dev

하위 프로젝트 (마스터 프로젝트 내부)에서 작업의 행을 선택하는 방법

분류에서Dev

다른 선택에 따라 옵션을 선택하는 방법

분류에서Dev

Recyclerview에서 선택되지 않은 다른 항목에 대한 작업을 설정하는 방법

분류에서Dev

Clojure에서 정규식 후 선택한 문자열에 대해 작업을 수행하는 방법

분류에서Dev

메서드 호출에서 Null을 반환하는 PHP SOAP WSDL 모드

분류에서Dev

SOAP wsdl에서 네임 스페이스 래퍼 태그를 방지하는 방법은 무엇입니까?

분류에서Dev

패널에서 선을 그리고 선택하는 방법

분류에서Dev

선택에서 선택하는 방법?

분류에서Dev

선택한 인덱스 / 값을 뷰에서 컨트롤러의 작업으로 전달하는 방법

분류에서Dev

SSL을 통해 wsdl에서 jax ws 아티팩트를 생성하는 방법

분류에서Dev

헤더를 선택하여 JDialog에서 JTable의 열을 선택하는 방법

분류에서Dev

Unity의 캐릭터 선택 메뉴에서 playerprefs로 작업하는 방법

분류에서Dev

webpack 또는 node는 node_modules에서 플러그인을 선택하는 방법을 어떻게 알 수 있습니까?

분류에서Dev

툴팁 대화 상자의 선택 옵션 작업 트리거 onmouseleave 이벤트에서 선택을 방지하는 방법

분류에서Dev

일부 작업을 수행하기 위해 Node.js에서 키 시퀀스를 감지하는 방법

분류에서Dev

node_redis를 사용하여 여러 큐에서 BLPOP, BRPOP 작업을 사용하는 방법

Related 관련 기사

  1. 1

    동일한 SOAP 헤더를 사용하여 WSDL 작업에서 반복되는 것을 방지하는 방법

  2. 2

    C #의 SOAP wsdl에서 작업에 대한 중첩 된 complexType 매개 변수를 가져 오는 방법

  3. 3

    100 개 이상의 클라이언트에서 사용중인 wsdl soap을 업데이트하는 방법

  4. 4

    PHP Xpath : WSDL의 모든 메서드에서 작업 URL을 가져 오는 방법은 무엇입니까?

  5. 5

    CXF 요청 인터셉터의 SoapMessage에서 WSDL 작업 이름을 얻는 방법

  6. 6

    선택 태그에서 두 가지 다른 작업을 호출하는 방법

  7. 7

    선택기를 사용하여 UITextField에 작업을 추가하는 방법

  8. 8

    선택에서 여러 단락을 선택하는 방법

  9. 9

    Java에서 wsdl을 찾을 수 없을 때 SOAP 웹 서비스를 사용하는 권장 방법은 무엇입니까?

  10. 10

    항목 목록을 사용하여 SOAP 응답에 대한 WSDL 복합 유형을 정의하는 방법

  11. 11

    tibco에서 Concrete WSDL을 만드는 방법

  12. 12

    node-mysql에 삽입하는 동안 행 [0]을 선택하는 방법은 무엇입니까?

  13. 13

    평균을 계산할 때이 패턴 작업을 수행하는 방법 : 표 T에서 선택

  14. 14

    하위 프로젝트 (마스터 프로젝트 내부)에서 작업의 행을 선택하는 방법

  15. 15

    다른 선택에 따라 옵션을 선택하는 방법

  16. 16

    Recyclerview에서 선택되지 않은 다른 항목에 대한 작업을 설정하는 방법

  17. 17

    Clojure에서 정규식 후 선택한 문자열에 대해 작업을 수행하는 방법

  18. 18

    메서드 호출에서 Null을 반환하는 PHP SOAP WSDL 모드

  19. 19

    SOAP wsdl에서 네임 스페이스 래퍼 태그를 방지하는 방법은 무엇입니까?

  20. 20

    패널에서 선을 그리고 선택하는 방법

  21. 21

    선택에서 선택하는 방법?

  22. 22

    선택한 인덱스 / 값을 뷰에서 컨트롤러의 작업으로 전달하는 방법

  23. 23

    SSL을 통해 wsdl에서 jax ws 아티팩트를 생성하는 방법

  24. 24

    헤더를 선택하여 JDialog에서 JTable의 열을 선택하는 방법

  25. 25

    Unity의 캐릭터 선택 메뉴에서 playerprefs로 작업하는 방법

  26. 26

    webpack 또는 node는 node_modules에서 플러그인을 선택하는 방법을 어떻게 알 수 있습니까?

  27. 27

    툴팁 대화 상자의 선택 옵션 작업 트리거 onmouseleave 이벤트에서 선택을 방지하는 방법

  28. 28

    일부 작업을 수행하기 위해 Node.js에서 키 시퀀스를 감지하는 방법

  29. 29

    node_redis를 사용하여 여러 큐에서 BLPOP, BRPOP 작업을 사용하는 방법

뜨겁다태그

보관