当前位置: 首页 > news >正文

浅谈WebSerice

一. 什么是WebService

          Web Service也称为web服务,它是一种跨编程语言和操作系统平台的远程调用技术。Web Service采用标准的SOAP协议传输(SOAP:Simple Object Access Protocol简单对象访问协议,soap属于w3c标准。并且soap协议是基于http的应用层协议传输xml数据)。Web Service采用WSDL作为描述语言,也就是Web Service 的使用说明书。并且W3C为Web Service制定了一套传输数据类型,使用xml进行描述,即XSD(XML Schema Datatypes),任何语言写的web Service 接口在发送数据的时候都要转换成WebService标准的XSD发送。

 二. WebService的三要素

   2.1 SOAP

     SOAP也叫做简单对象访问协议,是一种简单的基于xml的协议,它使应用程序通过HTTP来交换数据,可以简单的理解为SOAP= http+xml。SOAP协议目前的主流版本为:SOAP1.1和SOAP1.2(soap1.2是被纳入w3c标准后的版本)。SOAP也不是WebService的专有协议,其它的应用程序也是用soap传输数据。例如:tr069也是使用soap协议来传输数据。

2.2 WSDL

        WSDL是基于XML的用于描述Web Service 及其函数(方法)、参数和返回值。也就是说wsdl是对发布出来的服务中的方法和返回值以及参数的描述(可以成为是WebService的使用说明书)。

     WSDL文档结构:

     WSDL文档主要包括5个标签:

  1. <service> :服务视图,WebService的服务结点,它包括服务端点。
  2. <binding> :为每个服务端点定义消息格式和协议细节。
  3. <portType> :服务端点,描述WebService可执行的操作方法,以及相关的消息,通过binding指向portType。
  4. <message> :定义一个操作(方法)的数据参数(可有多个参数)
  5. <type> :定义WebService使用的全部数据类型。

2.3 UDDI

    UDDI是一种目录服务,通过它,企业可注册并搜集Web Service。企业将自己提供的Web Service注册在UDDI,也可以使用别的企业在UDDI注册Web Service服务,从而达到资源共享。UDDI旨在将全球的Web Service资源进行共享。

 

三、简单代码示例 

using System;
using System.Web;
using System.Web.Services;[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class Service : System.Web.Services.WebService
{[WebMethod]public int Add(int a, int b){return a + b;}
}

相关文章:

浅谈WebSerice

一. 什么是WebService Web Service也称为web服务&#xff0c;它是一种跨编程语言和操作系统平台的远程调用技术。Web Service采用标准的SOAP协议传输&#xff08;SOAP&#xff1a;Simple Object Access Protocol简单对象访问协议&#xff0c;soap属于w3c标准。并且soap协议是基…...

linux快速入门-学习笔记

linux快速入门-学习笔记 第一章&#xff1a;Linux系统概念及命令学习Linux系统基本概念命令终端介绍命令格式介绍Linux系统辨别目录与文件的方法通过文件详细属性辨别ls 查看目录/文件命令Linux 系统下的归属关系命令行编辑技巧Linux 基本权限的类别课后练习 第二章&#xff1a…...

科普文:5种Linux下软件部署方式说明

在Linux世界里&#xff0c;高效、灵活地安装和管理软件是每个系统管理员和开发者的基本功。从传统的RPM包管理&#xff0c;到便捷的YUM软件仓库&#xff0c;再到颠覆性的Docker容器技术&#xff0c;Snap&#xff0c;源码安装&#xff0c;每一种方法都有其独到之处&#xff0c;适…...

Redisson中的RBlockingQueue的使用场景及例子

Redisson 的 RBlockingQueue 是一个实现了 Java BlockingQueue 接口的分布式队列&#xff0c;它可以用于在分布式系统中实现生产者-消费者模式。RBlockingQueue 提供了线程安全的阻塞队列操作&#xff0c;允许生产者在队列满时阻塞&#xff0c;消费者在队列空时阻塞&#xff0c…...

【办公软件】Office 2019以上版本PPT 做平滑切换

Office2019以上版本可以在切页面时做平滑切换&#xff0c;做到一些简单的动画效果。如下在快捷菜单栏中的切换里选择平滑。 比如&#xff0c;在两页PPT中&#xff0c;使用同一个形状对象&#xff0c;修改了大小和颜色。 选择切换为平滑后&#xff0c;可以完成如下的动画显示。 …...

connect-multiparty中间件用法以及实例--文件上传中间件(保姆级别教学)

connect-multiparty中间件的用法包括安装和引入、基本设置、路由应用、文件处理以及安全和优化等步骤。 connect-multiparty是一个专为Connect和Express框架设计的文件上传中间件&#xff0c;它基于multiparty库&#xff0c;用于处理多部分表单数据&#xff0c;尤其针对文件上传…...

0503触发器的电路结构和工作原理

触发器的电路结构和工作原理 如何区分锁存器还是触发器&#xff0c; 看有没有这个三角符号&#xff0c;告诉是上升沿触发还是下降沿触发&#xff0c;没有三角符号就是电平触发。低电平触发就画个小圈。高电平触发就不画小圈。有小圈的三角就是下降沿触发 setup建立时间 hold 保…...

LeetCode:二叉树的中序遍历(C语言)

1、前序遍历&#xff1a;根左右 2、中序遍历&#xff1a;左根右 3、后序遍历&#xff1a;左右根 1、问题概述&#xff1a;二叉树中序遍历 2、示例 示例 1&#xff1a; 输入&#xff1a;root [1,null,2,3] 输出&#xff1a;[1,3,2] 示例 2&#xff1a; 输入&#xff1a;root […...

MySQL数据库基本安装与部署

目录 概念 数据库的基本概念 关系型数据库 非关系型数据库 MySQL 商业版与社区版 示例 初始化MySQL 添加系统服务 概念 数据库的基本概念 数据&#xff08;Data&#xff09; 描述事物的符号记录包括数字、文字、图形、图像、声音、档案记录等以“记录”形式按统一的…...

paraFoam 运行 报错 usr/lib/x86_64-linux-gnu/libQt5Core.so 已解决

在日常项目开发中。使用ubuntu 视图开发的时候。报错 缺少 libQt5Core 核心组件&#xff01; whereis libQt5Core.so.5sudo strip --remove-section.note.ABI-tag /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 完美解决&#xff0c;并且能正常打开&#xff0c;前提是&#xff0c…...

科技前沿:Llama 3.1的突破与革新

在科技的长河中&#xff0c;每一次模型的更新都是对人类智慧的致敬。今天&#xff0c;我们将聚焦于Meta公司最新发布的Llama 3.1系列模型&#xff0c;探索其在AI领域的前沿突破。 新模型的诞生 自去年以来&#xff0c;Meta公司不断推进人工智能技术的发展&#xff0c;终于在近…...

每天一个数据分析题(四百四十七)- 业务系统

业务系统往往因为系统故障、设备故障、人为失误等原因导致数据中存在异常数据&#xff0c;下列哪一项方法对于发现异常值有帮助&#xff08; &#xff09; A. 计算均值加减三倍标准差的范围 B. 梯度下降法 C. 相关性分析 D. 计算四分位距 数据分析认证考试介绍&#xff1a…...

如何保护你的网络安全?

在2024年4月&#xff0c;一次创纪录的DDoS&#xff08;分布式拒绝服务&#xff09;攻击震惊了网络世界&#xff0c;这次攻击达到每秒840百万数据包&#xff08;Mpps&#xff09;。你可能会问&#xff0c;DDoS攻击到底是什么&#xff1f;为什么它这么重要呢&#xff1f; 什么是…...

Nginx 怎样处理请求的重试机制?

&#x1f345;关注博主&#x1f397;️ 带你畅游技术世界&#xff0c;不错过每一次成长机会&#xff01; 文章目录 Nginx 怎样处理请求的重试机制&#xff1f;一、为何需要重试机制&#xff1f;二、Nginx 中的重试机制原理三、Nginx 重试机制的配置参数四、Nginx 重试机制的实际…...

自己开发软件实现网站抓取m3u8链接

几天前一个同学说想下载一个网站的视频找不到连接&#xff0c;问我有没有什么办法,网站抓取m3u8链接 网页抓取m3u8链接。当时一听觉得应该简单&#xff0c;于是说我抽空看看。然后就分析目标网页&#xff0c;试图从网页源码里找出连接&#xff0c;有的源代码直接有,但是有的没有…...

[Python3] 多模式字符串搜索 `Aho-Corasick`

ahocorasick.Automaton 是 Python 中 pyahocorasick 库提供的一个类&#xff0c;用于实现 Aho-Corasick 自动机。Aho-Corasick 算法是一种用于精确或近似多模式字符串搜索的高效算法。 通过 pip install pyahocorasick 安装 pyahocorasick 库。 并且&#xff0c;该模块是用 C 编…...

4 Types of Kaggle Competitions

1---Featured Competitions&#x1f911;&#x1f911; These are comprehensive Machine Learning challenges posed by difficult, often business-oriented predictive problems. For example, 1⃣️Using customers history of buying insurance to predict the price t…...

【STM32】stm32中GPIO_ReadInputDataBit()是什么意思

GPIO_ReadInputDataBit()函数用于读取指定GPIO端口的某一引脚上的电平状态&#xff0c;并返回该引脚的电平是高电平&#xff08;1&#xff09;还是低电平&#xff08;0&#xff09;。 在STM32单片机中&#xff0c;GPIO&#xff08;General-Purpose Input/Output&#xff09;端…...

Study--Oracle-07-ASM相关参数(三)

一、ASM初始化参数 1、ASM全量参数,见附件 2、ASM重要参数 无需求不需要调整 3、ASM权限 ASM的三大系统权限包括SYSDBA、‌SYSOPER和SYSASM。‌ SYSDBA(‌系统管理员)‌:‌这是最高级别的权限,‌允许用户执行所有的数据库管理任务,‌包括启动和关闭数据库,‌以及执行…...

【STM32嵌入式系统设计与开发拓展】——12_Timer(定时器中断实验)

目录 1、什么是定时器&#xff1f;定时器用于测量时间间隔&#xff0c;而计数器用于计数外部事件的次数 2、定时器的主要功能和用途&#xff1f;3、定时器类型&#xff1f;4、定时器的编写过程5、代码分析定时器计算&#xff1f;计算过程周期&#xff08;arr&#xff09;&#…...

手机号查QQ号:3分钟解决信息断链的智能工具指南

手机号查QQ号&#xff1a;3分钟解决信息断链的智能工具指南 【免费下载链接】phone2qq 项目地址: https://gitcode.com/gh_mirrors/ph/phone2qq 你是否曾经因为忘记好友的QQ号而无法及时联系&#xff1f;或者在工作中需要验证客户联系方式却无从下手&#xff1f;手机号…...

SillyTavern角色创建完全指南:从入门到精通

SillyTavern角色创建完全指南&#xff1a;从入门到精通 【免费下载链接】SillyTavern LLM Frontend for Power Users. 项目地址: https://gitcode.com/GitHub_Trending/si/SillyTavern 一、基础认知&#xff1a;揭开角色系统的面纱 1.1 什么是角色系统&#xff1f; 想…...

3步破解音乐平台碎片化困局:Listen1多源聚合技术深度实践

3步破解音乐平台碎片化困局&#xff1a;Listen1多源聚合技术深度实践 【免费下载链接】listen1_chrome_extension one for all free music in china (chrome extension, also works for firefox) 项目地址: https://gitcode.com/gh_mirrors/li/listen1_chrome_extension …...

2026年GPT-5.4实战应用完全指南

2026 年 3 月 OpenAI 发布的 GPT-5.4&#xff0c;是 AI 从对话工具转向自动化执行代理的里程碑产品&#xff0c;凭借原生计算机操控、百万 Token 上下文、Excel 深度集成、强推理编程四大核心突破&#xff0c;覆盖企业、专家、讲师、管理者、主播、电商、小白七类人群&#xff…...

如何快速实现智能自动化配置:OpCore-Simplify完整实战指南

如何快速实现智能自动化配置&#xff1a;OpCore-Simplify完整实战指南 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify OpCore-Simplify是一款专为Hack…...

3分钟搞定:Source Code Pro字体终极配置指南,让代码阅读体验提升300%

3分钟搞定&#xff1a;Source Code Pro字体终极配置指南&#xff0c;让代码阅读体验提升300% 【免费下载链接】source-code-pro Monospaced font family for user interface and coding environments 项目地址: https://gitcode.com/gh_mirrors/so/source-code-pro 你是…...

效率革命:80+款Android UI模板的全场景应用指南

效率革命&#xff1a;80款Android UI模板的全场景应用指南 【免费下载链接】Android-ui-templates Download free android app templates free and paid. 项目地址: https://gitcode.com/gh_mirrors/an/Android-ui-templates 在移动应用开发中&#xff0c;界面设计往往占…...

python numpy包的使用

文章目录比较常用的功能计算相似度计算矩阵有人问 求平均数还不简单&#xff0c;还用的着mean()方法吗?np.sum()方法计算矩阵的行和与列和keepdims求和后保持结果的维度不变示例np.sum()的内置参数非常强的一个包&#xff0c;在数组、矩阵、向量计算方面极具优势。比较常用的功…...

除了当图床,Cloudflare R2的S3 API还能这么玩?Python脚本批量管理文件实战

解锁Cloudflare R2的S3 API潜能&#xff1a;Python自动化文件管理实战 Cloudflare R2作为兼容S3 API的对象存储服务&#xff0c;其应用场景远不止搭建图床这么简单。对于开发者而言&#xff0c;R2提供的S3兼容接口意味着可以将其无缝集成到各种自动化工作流中。本文将带你探索如…...

低成本AI方案:OpenClaw对接本地Qwen3.5-9B替代ChatGPT API

低成本AI方案&#xff1a;OpenClaw对接本地Qwen3.5-9B替代ChatGPT API 1. 为什么选择本地部署Qwen3.5-9B&#xff1f; 作为一名长期使用OpenAI API的开发者&#xff0c;我最近开始尝试将OpenClaw与本地部署的Qwen3.5-9B模型对接。这个转变源于一个简单但痛苦的事实&#xff1…...