1

以下のコードのどこが悪いのか、誰でも教えてくれますか

var BasicHttpBinding = require('wcf.js').BasicHttpBinding
, Proxy = require('wcf.js').Proxy
, binding = new BasicHttpBinding()
, proxy = new Proxy(binding,"http://www.restfulwebservices.net/wcf/WeatherForecastService.svc")
, message = '<Envelope xmlns=' +
        '"http://schemas.xmlsoap.org/soap/envelope/">' +
             '<Header />' +
               '<Body>' +
                 '<GetCitiesByCountry xmlns="http://www.restfulwebservices.net/ServiceContracts/2008/01">' +
                  '<Country>korea</Country>' +
                  '</GetCitiesByCountry>' +
                '</Body>' +
           '</Envelope>'

proxy.send(message, "http://www.restfulwebservices.net/ServiceContracts/2008/01/IWeatherForecastService/GetCitiesByCountry", function(response, ctx) {
console.log(response)
});

以下のエラーが表示されます

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body><s:Fault>  <faultcode xmlns:a="http://schemas.microsoft.com/ws/2005/05/addressing/none">a:ActionNotSupported</faultcode><faultstring xml:lang="en-US">The message with Action 'http://www.restfulwebservices.net/ServiceContracts/2008/01/IWeatherForecastService/GetCitiesByCountry' cannot be processed at the receiver, due to a ContractFilter mismatch at the EndpointDispatcher. This may be because of either a contract mismatch (mismatched Actions between sender and receiver) or a binding/security mismatch between the sender and the receiver.  Check that sender and receiver have the same contract and the same binding (including security requirements, e.g. Message, Transport, None).</faultstring></s:Fault></s:Body></s:Envelope>

これに関するヘルプは本当に役に立ちます。

ありがとう

4

1 に答える 1

1

Wcf.js は SOAP サービスのみをサポートします。REST Web サービスに Wcf.js を使用することはできません。

于 2013-03-22T09:29:32.367 に答える