adrotec/odataphpprod

PHP OData生产者

1.1.0 2017-05-24 13:57 UTC

This package is not auto-updated.

Last update: 2024-09-21 12:19:17 UTC


README

此项目不再维护。我们不会接受拉取请求、处理问题或发布未来的版本。

PHP OData生产者库 V1.2

PHP OData生产者库是一个服务器库,允许通过OData协议暴露数据源。PHP OData生产者支持协议版本2.0中指定的所有只读操作。

  • 它提供了两种表示资源的格式,基于XML的Atom格式和JSON格式。
  • 服务器公开一个元数据文档,描述服务及其资源的结构。
  • 客户端可以通过对其URI发起HTTP GET请求来检索源、条目或服务文档。
  • 服务器支持从条目中检索单个属性。
  • 它支持分页、查询验证和系统查询选项,如$format、$top、$linecount、$filter、$select、$expand、$orderby、$skip。
  • 用户可以访问二进制流数据(即允许OData服务器除了所有结构化数据外,还可以访问媒体内容,如照片或文档)

如何使用PHP OData生产者库

数据通过三个接口映射到应用程序中的OData生产者。从那里,数据被转换为OData结构并发送给客户端。所需的3个接口是

  • IDataServiceMetadataProvider:这是用于将数据源结构映射到OData协议中定义的元数据格式的接口。通常,OData服务公开一个$metadata端点,客户端可以使用它来确定服务如何暴露数据以及它们应该期待哪些结构和数据类型。
  • IDataServiceQueryProvider:这是用于将客户端查询映射到数据源的接口。库有解析传入查询的代码,但为了从数据源查询正确的数据,开发者必须指定如何将传入的OData查询映射到数据源中的特定数据。
  • IServiceProvider:这是处理服务端点的接口,允许定义功能,如OData服务器分页功能的页面大小、服务的访问规则、接受的OData协议版本等。
  • IDataServiceStreamProvider:这是一个可选的接口,可以用来启用内容(如图片或其他二进制格式)的流式传输。如果元数据中定义的数据类型是EDM.Binary,则OData服务会调用该接口。

如果您想了解更多关于PHP生产者库的信息,代码中包含的用户指南(\docs目录)提供了有关如何安装和配置库的详细信息,它还展示了如何实现接口以构建一个完全功能的OData服务。

该库仅使用PHP构建,它可以在Windows和Linux上运行。