meface/docs/article/gis/geoserver/ows.md

82 lines
3.0 KiB
Markdown
Raw Normal View History

2023-11-17 10:54:23 +08:00
---
title: OWS-OGC Web 服务通用标准
date: 2020-03-25
author: ac
tags:
- OWS
categories:
- GIS
---
## OWS规范
**OWSOGC Web Service Common Implementation Specification**
在制定Web服务体系规范时为了避免在每个规范中重复规定或使用一些操作因此将这些共有的接口实现规范和标准参考抽离出来制定了OWS[OGC Web Service](http://portal.opengeospatial.org/files/?artifact_id=38867)),然后在每个规范中引用该规范的相关部分。这些标准目前包括:
- Web地图服务(WMS)
- Web要素服务(WFS)
- Web栅格服务(WCS)
这些公共方面主要是操作请求和响应中使用的一些参数和数据结构。当然,每个这样的实现标准都必须指定该接口的其他方面,包括指定所有操作请求和响应所需的所有附加参数和数据结构。例如获取服务中所支持的操作和服务元数据的`Getcapabilities`操作,指定了该操作的`KVP`、`XML`、`SOAP`格式的请求参数规范以及响应的数据格式和异常处理的规则。
### 1.HTTP 请求规则
OWS可以通过GET和POST两种方式对服务进行请求。而请求的参数编码也有两种
- 键值对Key-value-pair KVP
- XML对象XML
组合情况如下:
| type | get | post |
| ---- | ------------- | -------------------------------------- |
| KVP | 非MIMEURL | MIME:application/x-www-form-urlencoded |
| XML | 不支持 | MIME:text/xml |
### 2.HTTP 响应规则
服务处理完请求后生成结果或异常信息然后以MIME的方式返回客户端。
### 3.SOAP
在OWS服务和OWS服务之间可以采用SOAPSimple object access protocol简单对象访问协议消息进行数据交互POST
SOAP 消息是符合 SOAP 规范的 XML通常用于Internet特别是使用HTTP上的通信应用程序之间进行消息传输。
备注:
简单对象访问协议SOAP是用于应用程序之间通信的通信协议。
它定义了一种格式用于通过Internet特别是使用HTTP在通信应用程序之间发送消息。
Soap是平台无关的语言无关的并且SOAP消息是使用XML编码的。
这意味着SOAP提供了一种使用不同的技术和编程语言在不同操作系统上运行的应用程序之间进行通信的方法。
SOAP消息是包含以下元素的普通XML文档
1. 必需的Envelope元素用于将XML文档标识为SOAP消息
2. 包含标题信息的可选Header元素
3. 必需的Body元素包含通话和响应信息
4. 可选的Fault元素提供有关在处理消息时发生的错误的信息
```xml
<?xml version=“1.0”?>
<soap:Envelope
xmlns:soap=http://www.w3.org/2003/05/soap-envelope
soap:encodingStyle=“http://www.w3.org/2003/05/soap-encoding”>
<soap:Header>
</soap:Header>
<soap:Body>
<soap:Fault>
</soap:Fault>
</soap:Body>
</soap:Envelope>
```