小编Ago*_*ezl的帖子

使用node-soap的简单web服务

我正在尝试使用Node使用Node Js和node-soap来实现一个简单的Web服务,但是客户端似乎在使用服务器时遇到了问题.

assert.js:92
  throw new assert.AssertionError({
        ^
AssertionError: invalid message definition for document style binding
Run Code Online (Sandbox Code Playgroud)

我的wsdl文件是:

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions name="wscalc1"
                  targetNamespace="http://localhost:8000/wscalc1"
                  xmlns="http://localhost:8000/wscalc1"
                  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
                  xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
                  xmlns:xs="http://www.w3.org/2001/XMLSchema"
                  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">

  <wsdl:message name="sumarRequest">
    <wsdl:part name="a" type="xs:string"></wsdl:part>
    <wsdl:part name="b" type="xs:string"></wsdl:part>
  </wsdl:message>

  <wsdl:message name="multiplicarRequest">
    <wsdl:part name="a" type="xs:string"></wsdl:part>
    <wsdl:part name="b" type="xs:string"></wsdl:part>
  </wsdl:message>

  <wsdl:message name="multiplicarResponse">
    <wsdl:part name="res" type="xs:string"></wsdl:part>
  </wsdl:message>

  <wsdl:message name="sumarResponse">
    <wsdl:part name="res" type="xs:string"></wsdl:part>
  </wsdl:message>


  <wsdl:portType name="calcP">
    <wsdl:operation name="sumar">
      <wsdl:input message="sumarRequest"></wsdl:input>
      <wsdl:output message="sumarResponse"></wsdl:output>
    </wsdl:operation>

    <wsdl:operation name="multiplicar">
      <wsdl:input message="multiplicarRequest"></wsdl:input>
      <wsdl:output message="multiplicarResponse"></wsdl:output>
    </wsdl:operation>
  </wsdl:portType>

  <wsdl:binding name="calcB" type="calcP">
    <soap:binding style="document" 
                  transport="http://schemas.xmlsoap.org/soap/http"/> …
Run Code Online (Sandbox Code Playgroud)

soap wsdl web-services node.js

7
推荐指数
2
解决办法
1万
查看次数

标签 统计

node.js ×1

soap ×1

web-services ×1

wsdl ×1