WebService转发的实现及使用Postman调试

目录

一、WebService转发的实现

二、使用Postman测试WebService


一、WebService转发的实现

A系统需要调用C系统的某些接口,但是网络策略不通,B系统C系统的网络策略是通的,A系统B系统的网络策略也是通的,于是就有了转发接口请求的需求。

通过C系统提供的接口契约文件(wsdl文件),使用VS工具生产接口类文件,参考:https://blog.csdn.net/yinshengchen/article/details/82856792

创建WebService(BTestSrv),并使用上一步生成的接口类(ITestBinding)中的参数对象,作为WebService接口的入参和返回。

先使用AutoMapper工具将B命名空间下的入参对象bInput转为C命名空间下的入参对象cInput

再将cInput作为入参调用C命名空间下的process接口,返回C命名空间下的输出对象cOutput

然后使用AutoMapper工具将C命名空间下的cOutput转为B命名空间下的输出对象bOutput

最后将bOutput作为接口的返回对象进行返回。

public class BTestSrv : ITestBinding
{
    [WebMethod]
    B.OutputParameters ITestBinding.process(B.InputParameters bInput)
    {
        C.InputParameters cInput = AutoMapper.Mapper.Map(bInput);

        CTestSrv srv = new CTestSrv();
        srv.Proxy = null;
        srv.RequestEncoding = System.Text.Encoding.UTF8;
        srv.Timeout = 60 * 1000;
        C.OutputParameters cOutput = srv.process(cInput);

        B.OutputParameters bOutput = AutoMapper.Mapper.Map(cOutput);

        return bOutput;
    }
}

二、使用Postman测试WebService

如图所示,增加Content-Type参数(值为:text/xml),选择Post方式,调用接口

注意接口地址应如:http://xxxx/testwebservice.asmx,后面不要加“?wsdl”,否则调用时会返回404错误

WebService转发的实现及使用Postman调试_第1张图片

WebService转发的实现及使用Postman调试_第2张图片

你可能感兴趣的:(C#,分享类,WebService,webservice,c#,postman,wsdl)