zoukankan      html  css  js  c++  java
  • .NET总结--WebService 配置与设置,发布

    发环境

      OS:win10 企业版

      开发工具:VS2017

      IIS版本:6.0

       .NET版本:4.6.1

    Web Service

      简介

      Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。是:通过SOAP在Web上提供的软件服务,使用 WSDL文件进行说明,并通过UDDI进行注册。

      XML:(Extensible Markup Language)扩展型可标记语言。面向短期的临时数据处理、面向万维网络,是Soap的基础。

      Soap:(Simple Object Access Protocol)简单对象存取协议。是XML Web Service 的通信协议。当用户通过UDDI找到你的WSDL描述文档后,他通过可以SOAP调用你建立的Web服务中的一个或多个操作。SOAP是XML文档形式的调用方法的规范,它可以支持不同的底层接口,像HTTP(S)或者SMTP。

      WSDL:(Web Services Description Language) WSDL 文件是一个 XML 文档,用于说明一组 SOAP 消息以及如何交换这些消息。大多数情况下由软件自动生成和使用。

      UDDI (Universal Description, Discovery, and Integration) 是一个主要针对Web服务供应商和使用者的新项目。在用户能够调用Web服务之前,必须确定这个服务内包含哪些商务方法,找到被调用的接口定义,还要在服务端来编制软件,UDDI是一种根据描述文档来引导系统查找相应服务的机制。UDDI利用SOAP消息机制(标准的XML/HTTP)来发布,编辑,浏览以及查找注册信息。它采用XML格式来封装各种不同类型的数据,并且发送到注册中心或者由注册中心来返回需要的数据。

      1.特点:开放性,跨平台性,开放性是webservice的基础

      2.XML通用标记语言,以及HTTP协议远程交互

      3.三种调用方式:httppost,httpget,httpsoap

      简单例子

      首先,创建空web应用程序

      

      选择空web应用程序

      

      添加完成之后需要右键点击刚刚添加的空网站点击添加服务

      

      添加服务后打开该服务增加WebMethod标记为公开方法

      

      这里我还添加了一个ajax测试方法

      

      就此编辑阶段完成,这里添加一下源码:

      

    namespace webserviceTest
    {
        /// <summary>
        /// webserviceone 的摘要说明
        /// </summary>
        [WebService(Namespace = "http://tempuri.org/")]
        [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
        [System.ComponentModel.ToolboxItem(false)]
        // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释以下行。 
        // [System.Web.Script.Services.ScriptService]
        //继承于webservice,该基类提供基本通信参数
        public class webserviceone : System.Web.Services.WebService
        {
            //若不添加该标记此方法将无法访问
            [WebMethod]
            public string HelloWorld()
            {
                return "Hello World";
            }
    
            //可访问webservice方法
            //Description 方法概述
            [WebMethod(Description ="测试方法1")]
            public string Addstring(string a, string b) {
                return string.Format(a + b);
            }
    
            //不可访问方法
            public string Substring(string a, string b)
            {
                return string.Format(a +"-"+ b);
            }
        }
    
        /// <summary>
        /// 仅仅用作练习,允许ajax调用
        /// </summary>
        [System.Web.Script.Services.ScriptService]
        public class webservicetwo : System.Web.Services.WebService
        {
    
            [WebMethod]
            public string Ajaxstring() {
                return "Hello AJAX";
            }
        }
    }

      右键点击该页面 选择在浏览器中查看就可以看到该方法:

      

      访问成功之后开始部署该服务到服务器,当前是部署到了我本机

      

      注意,进入发布之后选择发布类型时候选择文件夹 或者 自定义模式

      选择之后需要配置该服务位置以及方式如图:

      

      配置成功之后选择发布,注意看一下生成结果:

      

       发布成功后就可以配置iis服务器啦,我本机为IIS6服务 成功安装iis信息服务器之后 按下win+r 键 召唤运行 输入inetmgr 

      iis信息服务器配置页面出现 如下图:

      

      点击确定后该服务就发布出去啦访问该服务地址后会出现各种报错,下面是总结报错:

      

      该问题是因为默认文档未设置,解决方式有两部,首先不仅要去配置默认文档,还要添加一下该文件扩展名信息:

      

      默认文档设置:

      

      请求筛选:

      

      该文件扩展名为webservice文件扩展名。.asmx这里注意是有点的

      有时候也会出现权限问题等等需要在网站设置一下:

      

      设置该权限之后问题解决,就可以成功访问该webservice啦

      

      当然还有很多其他错误这里就不一一介绍了

  • 相关阅读:
    HTTP状态码
    NSData NSDate NSString NSArray NSDictionary 相互转换
    NSDictionary to jsonString || 对象转json格式
    git 上传本地文件到github
    NSAssert用法
    深入理解GCD(一)
    ug-Assertion failure in [MyClass layoutSublayersOfLayer:]
    构建之法阅读笔记01
    学习进度
    四则运算程序
  • 原文地址:https://www.cnblogs.com/workstation-liunianguowang/p/9092591.html
Copyright © 2011-2022 走看看