C# 调用SAP WebService接口(SoapUI Postman)

这篇具有很好参考价值的文章主要介绍了C# 调用SAP WebService接口(SoapUI Postman)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.使用SoapUI 解析wsdl

SAP wsdl地址发放在浏览器中是需要输入用户名密码进行认证的

c#调用sap接口,c#,postman

将wsdl地址放到SoapUI进行解析
输入用户名密码

c#调用sap接口,c#,postman

c#调用sap接口,c#,postman

左边就是请求的XML格式,右边是接口返回内容,点击运行就可以看到结果

c#调用sap接口,c#,postman

2.使用Postman调用

Request1的地址就是我们需要调用的地址(这里提供的域名和wsdl 的域名不一致,需要换成wsdl的域名,SAP是用了跳转网址的),将soapui左边的XML复制到postman中,接口需要在header中加入SOAPAction,SOAPAction在soapui工具的Raw中,如图:
c#调用sap接口,c#,postman

Content-Type : text/xml;charset=UTF-8;
Headers中一定要加入SOAPAction
Body中选择Raw Xml进行请求
再加上认证Basic Auth;就可以请求成功了

c#调用sap接口,c#,postman文章来源地址https://www.toymoban.com/news/detail-709067.html

3.使用C#代码进行调用

public static void RequestSAP(string url, int timeout, string xmlData, string userName, string password, out string statusCode, out string resultContent)
        {
            statusCode = "400";
            resultContent = "";
            try
            {
                byte[] bytes = Encoding.UTF8.GetBytes(xmlData);

                //Basic Auth
                byte[] byteUser = Encoding.Default.GetBytes(userName + ":" + password);
                string Authorization = Convert.ToBase64String(byteUser);

                HttpWebRequest request = HttpWebRequest.CreateHttp(url);
                //避免远程连接证书无效问题
                ServicePointManager.ServerCertificateValidationCallback = (s, certificate, chain, errs) => true;
                request.Method = "POST";
                request.Timeout = timeout;
                request.ContentType = "text/xml;charset=UTF-8";
                request.ContentLength = bytes.Length;
                request.Headers.Add("Authorization", "Basic " + Authorization);
                //根据soapui中的SOAPAction 进行赋值
                request.Headers.Add("SOAPAction", "SOAPAction");
                Stream requestStream = request.GetRequestStream();
                requestStream.Write(bytes, 0, bytes.Length);
                HttpWebResponse response = request.GetResponse() as HttpWebResponse;
                statusCode = response.StatusCode.ToString("d");
                Stream responseStream = response.GetResponseStream();
                StreamReader sr = new StreamReader(responseStream, Encoding.UTF8);
                resultContent = sr.ReadToEnd();
                sr.Dispose();
                requestStream.Close();
                responseStream.Close();
                response.Dispose();
            }
            catch (Exception ex)
            {
                statusCode = "400";
                resultContent = ex.Message;
            }
        }

到了这里,关于C# 调用SAP WebService接口(SoapUI Postman)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【SAP ABAP】SAP Webservice & RESTful 接口服务发布教程

    关于 WebService 概念,这篇文章讲解的非常全面,可以移步阅读《SAP Web service》。 本想通过 RFC 来发布 ODATA 服务,奈何当前 SAP ECC 版本过低不支持,只好采用其他方式来发布服务,于是就尝试了下面这两种方法。 SE37,创建以下测试用 RFC 测试执行 RFC,得到的数据结果如下图:

    2024年02月02日
    浏览(45)
  • 用Java调用C#的WebService接口

    这是一个用Java调用C#版程序的例子,废话不多说,上代码: C#接口代码: Java调用这个Webservice中的Add方法和HelloWorld方法: 1.有参方法:Add 运行,结果返回:Result:3 2.无参方法:HelloWorld 可以看到,调用无参的webservice和有参的基本相同,不过无参调用时,不需要调用Call的ad

    2024年02月12日
    浏览(51)
  • C# .Net6 指定WSDL, 生成Webservice,调用该接口服务

    IDE: Microsoft Visual Studio Community 2022 (64 位) 平台:.Net6 协议:Soap协议 Xml格式 需要开发一个前置机程序, 用于和硬件程序交互, 已知条件是:嵌入式同事提供另一个约定好的*.wsdl文件作为双方通信的Webservice接口协议,对方是服务端,前置机是客户端 使用BasicHttpBinding 通过WS

    2024年02月04日
    浏览(50)
  • SoapUI、Jmeter、Postman三种接口测试工具的比较分析(2)

    先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7 深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前! 因此收集整理了一份《2024年最新软件测试全套学习资料》

    2024年04月24日
    浏览(44)
  • 选择最适合你的接口测试工具:SoapUI、JMeter、Postman!

    在软件开发的过程中,接口测试是确保系统正常运行的关键环节。为了有效地执行接口测试,选择适当的工具至关重要。在这篇文章中,我们将比较分析三种常见的接口测试工具:SoapUI、JMeter和Postman,以帮助你了解它们的优势和劣势,以及在何种场景下选择哪种工具。 1、

    2024年02月05日
    浏览(48)
  • 【WebService】使用postman调用WebService方法

    公司原来有一个项目使用的是WebService,想模拟一下怎么调用WebService的方法,使用postman调用怎么调用。 接口:http://127.0.0.1:8080/SecurityWebService/SecurityCommand?wsdl 对应你的代码配置: 注意:Content-Type:text/xml;charset=UTF-8 默认的要注释 接下来解析一下请求xml xmlns:test: 不能少,必须是

    2024年02月08日
    浏览(49)
  • postman 调用webservice

    有个外部接口需要提供古老的webservice 格式接口。 按照xml 格式设置。 不加envelope: soap:Envelope xmlns:soap=\\\" \\\" target=\\\"_blank\\\" http://schemas.xmlsoap.org/soap/envelope/\\\" soap:Body soap:Fault faultcodesoap:VersionMismatch/faultcode faultstring\\\"urn:hl7-org:v3\\\", the namespace on the \\\"root\\\" element, is not a valid SOAP version./faultstr

    2024年01月18日
    浏览(38)
  • PostMan 如何调用 WebService

    首先 服务端提供服务: 1.服务接口  2.服务实现类  3.config配置类 - 此实例使用 CXF 实现webservice  4.客户端测试  发布服务,请求WSDL - 服务发布成功  注: 字符流 参数不能用Object做为接受参数类型,会获取不到请求过来的数据,一直为null; 本次用例服务 为 SOAP1.2 的请求协议

    2023年04月13日
    浏览(77)
  • PostMan WebService调用

    1、调试地址:http://*****/Service/Search.asmx 2、设置Heard      参数名:Content-Type      参数值:text/xml;charset=utf-8 3、设置xml      body中选ram-xml     xml内容: ?xml version=\\\"1.0\\\" encoding=\\\"utf-8\\\"? soap:Envelope xmlns:xsi=\\\"http://www.w3.org/2001/XMLSchema-instance\\\" xmlns:xsd=\\\"http://www.w3.org/2001/XMLSchema\\\" xmlns:s

    2024年02月14日
    浏览(40)
  • python连接sap并调用 SAP RFC接口

    python在我们工作中的作用还是有很多的,尤其是在数据处理方面和自动化等等,可以说是无所不能,这篇文章来给大家介绍一下python如何连接sap并调用 SAP RFC接口。首先给大家简单介绍一下pyrfc这个包,pyrfc是Python语言的SAP Remote Function Call(RFC)库,用于连接SAP系统并执行函数模

    2024年02月13日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包