【问题标题】:issue while accessing secure web services in c#在 C# 中访问安全 Web 服务时出现问题
【发布时间】:2013-04-08 00:10:00
【问题描述】:

我将其用作网络服务参考

http://<hostname>:8080/axis/services/USD_R11_WebService?wsdl"

但现在我必须使用使用 ssl 的安全设备,例如

**https:**//<hostname>/axis/services/USD_R11_WebService?wsdl" 

这个应该默认使用443端口

我已尝试按原样使用它,但一旦我在代码中进行交流,它就没有任何结果 这是我平时用的

USD_WebService wsUSD = new USD_WebService();
string username = "user name";
string password = "Password";
int sid = wsUSD.login(username, password);
userhandle = wsUSD.getHandleForUserid(sid, username); 

但现在连 sid 都无法获得。

是证书方面的问题还是网络身份验证问题?

我收到了以下例外情况

system.net.webexception 无法连接到远程服务器 system.net.sockets.socketexception 连接尝试失败,因为连接方在一段时间后没有正确响应或建立连接失败,因为连接的主机没有响应:80

【问题讨论】:

  • 请更改您的标题。从 Google 提出您的问题的人会认为他们将学习如何从 C# 访问安全的 Web 服务,并且会感到失望。
  • 您在尝试调用.login 或其他函数时是否遇到异常?如果是这样,您可以发布一些异常信息吗?这应该有助于为错误原因指明方向。
  • system.net.webexception 无法连接到远程服务器 system.net.sockets.socketexception 连接尝试失败,因为连接方在一段时间后没有正确响应或建立连接失败,因为连接的主机有未能响应 :80
  • 你能把 app.config 文件中的内容也贴出来吗?

标签: c# web-services security


【解决方案1】:

我解决了这个问题 jmgardn2 在他的评论中回复了 app.config 之后。

我发现每当我将安全链接添加到网络参考时,它都不会在配置文件中反映正确的链接。只是它会从 https 中删除 s,我中继不知道为什么 Visual Studio 删除了它,如下所示

<app.Properties.Settings>

        <value>http://<hostname>/axis/services/USD_R11_WebService</value>
</app.Properties.Settings>

我 100% 确定我添加了安全网络参考,并且当我将其更改回此参考时

<value>https://<hostname>/axis/services/USD_R11_WebService</value>

效果很好,

【讨论】:

    猜你喜欢
    • 2013-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多