文章目录
- 1. 前言
- 2. 什么是web services
- 3. 为什么要使用web services
- 4. web services分类
- 5. soap、wsdl、xsd是什么?
- 6. 参考文章
1. 前言
今天开启msf的时候发现有个web services服务,过去一直没怎么注意过这次决定好好了解一下,于是有了这篇文章。
2. 什么是web services
Web Services 是应用程序组件
Web Services 使用开放协议进行通信(http)
Web Services 是独立的(self-contained)并可自我描述
Web Services 可通过使用UDDI来发现
Web Services 可被其他应用程序使用
XML 是 Web Services 的基础
web services可以理解成一个提供api接口的平台且所有人都可以使用(例如fofa的api),用户一般通过XML与HTTP协议来使用其功能。
web services平台包含了以下几个元素:
- soap(简单对象访问协议)
- uddi(通用描述发现即整合)
- wsdl(web services 描述语言)
举个例子,支付宝,支付宝并没有银行卡等数据,它只是去调用银行提供的api来获得数据。还有天气预报等,也是气象局把自己的系统服务以webservice服务的形式暴露出来,让第三方网站和程序可以调用这些服务功能。
WebService交互的过程就是,WebService遵循SOAP协议通过XML封装数据,然后由Http协议来传输数据。
3. 为什么要使用web services
1.模块化组件化通过web或者说http协议来提供核心服务,方便用户进行使用。
2.让不同的平台可以更好的协同工作,因为几乎任何平台上的web浏览器都可以使用web services(web应用程序)。web services使用xml来编码或者解码数据,并使用soap进行传输,跨平台效果更佳。服务端可以使用任意语言编写,客户端也可以使用任意语言编写,只要通过调用web接口将数据转化成自己能理解的状态即可。
3.通过发布可重复使用的应用程序组件来减少编程压力
4.链接不同应用程序的数据,通过web services可以在不同的应用程序之间交换数据
4. web services分类
soap型与rest型,soap型不支持json格式数据进行解析,rest支持。
5. soap、wsdl、xsd是什么?
5.1 soap
soap可以理解成一种通信方式,它本身也就是一种协议,soap可以理解成用http协议将xml语法的数据进行传输来与web services平台进行交互。
SOAP 文档
5.2 wsdl
wsdl也是一个xml文档,这个文档描述了soap型web services中各种接口的使用方法,当web services创建完成的时候自动会生成wsdl文档。
WSDL 文档
5.3 XSD
Web service平台就是用XSD来作为其数据类型系统的。当你用某种语言(如VB. NET或C#)来构造一个Web service时,为了符合Web service标准,所有你使用的数据类型都必须被转换为XSD类型。
6. 参考文章
Web Services 简介
一文学会 Web Service漏洞挖掘!
Web Service 渗透测试从入门到精通