VS2019中WebService实现发布、调用以及问题汇总


前言

在对接工厂Mes的过程中,发现webService比较有趣,再次做下学习记录,并汇总遇见的问题以及解决方案。


一、WebService是什么,意义有哪些?

Web Service是一种基于Web的技术,用于实现不同应用程序之间的通信和数据交换。它通过使用标准的Internet协议(如HTTP,SOAP,XML等)来实现应用程序之间的集成。Web Service允许不同平台、不同编程语言和不同技术的应用程序之间进行互操作,使得它们能够相互调用和交换数据。

使用Web Service的意义在于以下几点:

  1. 跨平台互操作性:Web Service使得不同平台(如Windows、Linux、macOS等)、不同操作系统和不同设备之间的应用程序能够互相通信。这种跨平台的互操作性使得应用程序的开发更加灵活,可以选择更适合自己需求的技术和平台。

  2. 松耦合架构:通过使用Web Service,应用程序之间可以实现松耦合的架构。每个应用程序可以作为独立的服务提供特定的功能,其他应用程序可以通过调用这些服务来获取所需的功能,而不需要了解服务的内部实现细节。

  3. 分布式系统集成:Web Service使得分布式系统之间的集成变得更加容易。不同的应用程序可以在不同的服务器上运行,它们可以通过WebService来进行通信和数据交换,从而形成一个统一的分布式系统。

  4. 标准化协议:WebService使用标准的Internet协议来进行通信,如HTTP和SOAP。这些协议被广泛支持,并且可以在多种平台和编程语言中使用,确保了通信的稳定和可靠性。

  5. 面向服务的架构(SOA):WebService是实现面向服务的架构的一种重要手段。面向服务的架构将应用程序划分为多个服务,每个服务提供特定的功能,通过组合这些服务来构建复杂的应用程序。

总体而言,Web Service为应用程序之间的通信和数据交换提供了一种标准化、灵活和可靠的方式,使得不同的应用程序能够实现互操作,从而推动了分布式系统的发展和应用程序的集成。它在现代软件开发中扮演着重要的角色,尤其是在构建跨平台、跨语言的系统和应用程序时具有重要意义。

二、创建

1.新建一个 “ASP.NET Web应用程序(.NET Framework)”。项目
在这里插入图片描述
在这里插入图片描述
此处若找不到该项,就翻至最下方安装:
在这里插入图片描述
按下图进行安装:
在这里插入图片描述
继续新建项目:
在这里插入图片描述
在这里插入图片描述
新建一个Amsx文件:
在这里插入图片描述
在这里插入图片描述
自己新增个函数:
在这里插入图片描述启动
在这里插入图片描述
在这里插入图片描述
上图单击函数可进入测试调用的界面,下面仅介新增的函数SendName:
在这里插入图片描述
弹出界面:
在这里插入图片描述
到此,创建完毕。

二.发布

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
发布前可让他自动情况文件夹,防止一些其他错误,也可以不设置。
在这里插入图片描述
在这里插入图片描述
打开计算机管理:
在这里插入图片描述
此处没有Internet选项怎么办?
在这里插入图片描述
此处注意IP地址,可以为主机IP,也可以为127.0.0.1(本地IP)。(此处要注意,否则会出现网页打开超时的问题)
在这里插入图片描述
在这里插入图片描述

点击浏览网站,弹出网站页:
在这里插入图片描述
在这里插入图片描述
到此,证明接口发布成功。

三.访问

新建一个项目:此处新建了一个c#控制台程序,过程此处省略
添加服务引用:
在这里插入图片描述
此处需要注意的是地址框中,地址目标必须是.asmx不然读不到方法会报错。
地址填入后,点击转到就会出现服务,逐层点入就可以看见方法。
在这里插入图片描述
测试代码:

using System;
namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            ServiceReference1.WebService1SoapClient webService1SoapClient = new ServiceReference1.WebService1SoapClient();
            Console.WriteLine( webService1SoapClient.SendName("wwww"));
            Console.ReadKey();
        }
    }
}

在这里插入图片描述
此处需注意的是,服务器的命名空间是如下图:
在这里插入图片描述
也可以在添加服务引用的时候,更改命名空间。
在这里插入图片描述
控制台打印的字符串为,SendName函数的返回值,说明调用成功。

问题总结

1.不是专用连接

忘记截图了
解决方案

2.HTTP错误 403.14 - Forbidden

解决方案在这
在这里插入图片描述

3.HTTP 错误 404.3 - Not Found

解决方案
在这里插入图片描述

4.应用程序种服务器错误

解决方案
在这里插入图片描述

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值