我正在尝试在Visual Studio 2010中使用/使用Web服务.API的文档提供了3个URL:
文档提供了两个示例。对于json,他们说样本请求如下:
Http://testwebpay.interswitchng.com/test_paydirect/api/v1/gettransaction.json?productid=21&transactionreference=8421941122&amount=300000 HTTP/1.1
UserAgent: Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client Protocol 4.0.30319.239)
Hash: F6FF2E22F99D93DDDA52D71811FD92B3A71FA1968A66216E0D310DAD
和XML:
GET Http://testwebpay.interswitchng.com/test_paydirect/api/v1/gettransaction.xml?productid=21&transactionreference=8421941122&amount=300000 HTTP/1.1
UserAgent: Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client Protocol 4.0.30319.239)
Hash: F6FF2E22F99D93DDDA52D71811FD92B3A71FA1968A66216E0D310DAD
文档未提供使用.svc
网址
我正在尝试在VS 2010中使用Add -> Webservice Reference
,但我不断收到.svc
网址的错误(以上3中的第一个):
下载
https://testwebpay/test\_paydirect/services/WebPAYService.svc?wsdl
时出错 无法解析远程名称:'testwebpay'
元数据包含无法解析的引用:https://testwebpay/test\_paydirect/services/WebPAYService.svc?wsdl
在https://testwebpay/test\_paydirect/services/WebPAYService.svc?wsdl
没有可以接受该消息的端点监听。这通常是由错误的地址引起的 或SOAP动作。有关详细信息,请参阅InnerException(如果存在) 无法解析远程名称:'testwebpay'
我需要使用以上3个网址中的哪一个来添加服务引用。服务端是问题还是我做错了什么?
请建议
答案 0 :(得分:2)
这是一个相当奇怪的网络服务......
如果您转到第一个网址提供的网址:
http://testwebpay.interswitchng.com/test_paydirect/services/WebPAYService.svc
你会得到一个“帮助页面”,告诉你 - 是的,确实,这里有一个SOAP服务。
但是:在该页面顶部添加网络参考的网址为无效:
https://testwebpay/test_paydirect/services/WebPAYService.svc?wsdl
这是本地网址 - 缺少域名.....
因此,基于此URL,您必须连接到
https://testwebpay.interswitchng.com/test_paydirect/services/WebPAYService.svc?wsdl
以获取服务的SOAP定义(描述此服务的所有详细信息的Web服务描述语言文件)。一旦你连接到那里,一旦你忽略了证书问题(如果你信任该公司/服务提供商),那么你就可以获得正确的WSDL,并且可以构建你的服务客户端。
或者:转到
https://testwebpay.interswitchng.com/test_paydirect/services/webpayservice.svc
(您的第一个网址,但https://
代替http://
),您从一开始就获得了正确的WSDL网址......