winform访问https webservice

参考:https://www.bbsmax.com/A/x9J21Naez6/

 

先执行以下代码,所以密钥验证都返回成功,否则调用https时会提示认证失败。

 ServicePointManager.ServerCertificateValidationCallback = delegate (object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
            {
                // if (errors == SslPolicyErrors.None)
                //    return true;
                return true;
            };

 

 

添加web引用,再执行:

  localhost.WebService1 w = new localhost.WebService1();
  w.Url = this.textBox1.Text;    //这可以重写app.config中url地址,使用一个不一样的asmx
 this.textBox2.Text = w.HelloWorld();

 

避免用户在浏览器上打开asmx查询接口信息的方法:

开发时正常处理,发布时在web.config中的 <system.web>节点增加添加以下:

  <webServices>
        <protocols>
          <add name="HttpSoap" />
          <add name="HttpPost" />
          <add name="HttpGet" />
          <add name="Documentation" />
        </protocols>
        <wsdlHelpGenerator href ="webform1.aspx" /> 这个是一个错误页面,请写一个简单的页面
      </webServices>

经过以上处理,客户端程序调用不受影响,但通过浏览器打开asmx时会跳转到上述的错误页面

posted @   81  阅读(518)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
历史上的今天:
2012-06-15 Mutex对象是操作系统级?
2007-06-15 小鸭五笔2.0(x86,x64混合)发布
点击右上角即可分享
微信分享提示