欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

《PHP核心技术与最佳实践》-Web服务的实现模式

程序员文章站 2022-06-05 23:44:44
...
PHP支持两种WEB服务模式:WSDL和non-WSDL,为便于理解,先介绍Web服务的两种实现模式:

契约先行模式(Contract First)

代码先行模式(Code First)

契约先行模式:首要工作是定义针对这个WEB服务接口的WSDL(Web Services Description Language,网页服务描述语言)文件。WSDL文件中描述了WEB服务的位置、可提供的操作集以及其他属性。WSDL文件也就是WEB服务的“契约”。“契约”订立之后,再据此进行服务器端和客户端的应用程序开发。这种模式对应WSDL模式。

WSDL文件包括5部分:Types,Message,ProtType,Binding,Service.

Types:类型定义独立于语言,对应于SOAP消息中要传输的元素信息的定义。

Message:每个WEB方法对应两个Message定义in和out,而Message的定义包含头和体。

PortType:每个WebService对应一个PortType,其中又包含了对其发布的方法、操作。

Bindings:指定PortType中每个操作(类以及方法)的绑定消息,包含input和output消息的格式。

Service:每个WebService绑定的port消息。

某个 WSDL 文档的简化的片段: