灵活度 API 结构
Apigility API structure
我想用 Apigility 替换我们内部的 REST 系统并有一些问题。
我们有大量分层结构的资源(大约 1500 个)。 Apigility 适用于平面资源列表。当有大约 100 - 200 个资源时,这是可以的。数量大时可能很难处理。有没有办法将结构分解为子模块或类别或类似的?
由于 Apigility 将所有配置存储在文本文件中,因此大量字段和文档可能会导致性能问题 and/or 内存占用。有没有办法将 fields/configuration 拆分成单独的文件(或其他文件)?
部分资源用于PDF文件下载。是否可以使用 GET 方法提供 oAuth2 访问令牌? Link 文件是用 A 标签创建的,不能使用 HTTP headers。
1. 是的,您可以使用多个模块及其自己的 module.config.php
文件,就像您通常在 ZF2 应用程序中所做的那样。拆分成几个配置文件也很有用。例如,您可以创建:
metadata.config.php
、controller.config.php
和 inputfilter.config.php
然后在 module.php
Module::getConfig
方法中合并配置文件。
这可以帮助您组织起来。
2 overwrite/extend Apigility
模块的默认配置很容易。根据您希望进行定制的程度,您还可以构建自己的工厂和映射器,您可以在其中尝试最大程度地减少配置文件中的代码重复。在 ZF2 生产环境中正常缓存时,您的配置文件不应对性能产生太大影响。
3. 是的,您可以在 url 中使用访问令牌:
api/v1/documents/1?access_token=1234567890abcdefghijklmnopqrstuvqxyzABCD
我想用 Apigility 替换我们内部的 REST 系统并有一些问题。
我们有大量分层结构的资源(大约 1500 个)。 Apigility 适用于平面资源列表。当有大约 100 - 200 个资源时,这是可以的。数量大时可能很难处理。有没有办法将结构分解为子模块或类别或类似的?
由于 Apigility 将所有配置存储在文本文件中,因此大量字段和文档可能会导致性能问题 and/or 内存占用。有没有办法将 fields/configuration 拆分成单独的文件(或其他文件)?
部分资源用于PDF文件下载。是否可以使用 GET 方法提供 oAuth2 访问令牌? Link 文件是用 A 标签创建的,不能使用 HTTP headers。
1. 是的,您可以使用多个模块及其自己的 module.config.php
文件,就像您通常在 ZF2 应用程序中所做的那样。拆分成几个配置文件也很有用。例如,您可以创建:
metadata.config.php
、controller.config.php
和 inputfilter.config.php
然后在 module.php
Module::getConfig
方法中合并配置文件。
这可以帮助您组织起来。
2 overwrite/extend Apigility
模块的默认配置很容易。根据您希望进行定制的程度,您还可以构建自己的工厂和映射器,您可以在其中尝试最大程度地减少配置文件中的代码重复。在 ZF2 生产环境中正常缓存时,您的配置文件不应对性能产生太大影响。
3. 是的,您可以在 url 中使用访问令牌:
api/v1/documents/1?access_token=1234567890abcdefghijklmnopqrstuvqxyzABCD