1、已知wsdl文件需要搭建webservice服务器提供给.net(C#)的客户端调用,服务器端要如何写?网上有说wsdl不兼容应该如何修改呢,还没有改好。wsdl地址由.net方提供。2、.net的客户端访问过来,无法正常返回相应的数据包回去(自己写的php服务器可以调用),抓包结果如下。
.net失败抓包结果php成功抓包截图

解决方案 »

  1.   

    谢谢邀请
    你先读读自己的问题,看有没有把问题描述清楚。
    有几点不明1. 确认下你的意思现在的目标是要开发一个php的webservice是么,现在已有人用C#实现了一个版本,你想用PHP实现一个相同功能的?2. 你说的.net客户端访问过来,无法正常返回相应数据包回去,自己写的php服务器可以调用。可你两个截图第一个,你写的是.net失败抓包结果,你图中显示的却是 /index.php/api/SIInterfaceForAdC 返回的 500错误你第二个截图写的 php成功抓包截图,请求的却是C#实现的那个 /api/SIInterfaceForADC 返回的200成功还有客户端与服务端的代码以及你抓包时协议返回的内容都没有,直接就说出错了,换过来想,如果我来问你这个问题,你从哪里来分析是哪里出问题了?还有我 .net 那套东西不熟悉,哪位熟悉帮忙看看吧。
    PS: 1. http的协议用fiddler/charles之类的抓包更好读
    2. php报500依据你php.ini的设置可以从返回内容,或者你的web服务器的errorlog中看到原因
      

  2.   

    谢谢回答。
    1、问题是:需要搭建一个webservice服务器供c#的客户端调用,现在已知wsdl文件(C#方提供),但是wsdl文件与php(soapserver解析不了wsdl文件,原本是想修改wsdl文件来的)貌似不兼容。
    2、问题已经解决了,采用socket直接返回数据包给c#。使用fsocket模拟C#发送的数据包。
    感谢。