graviton/link-header-rel-parser
最新稳定版本:v1.0.1
Composer 安装命令:
composer require graviton/link-header-rel-parser
包简介
A small library that parses and generates RESTful Link headers with rel attributes (relations)
README 文档
README
This is a small standalone PHP library that helps with parsing and creating Link header contents with rel="" attributes
as it is used in the context of RESTful web services.
It is a tolerant parser, silently accepting invalid input. You can use the API functions to check if a given rel exists.
Installation
The preferred way to install library is through composer.
Either run
composer require graviton/link-header-rel-parser
or add
"graviton/link-header-rel-parser": "*",
to the require section of your composer.json.
Examples
Parsing headers
Parsing an existing header is easy, just pass the plain header contents to the static function:
$header = '<http://localhost/service/self>; rel="self", '<http://localhost/service/next>; rel="next"'; $linkHeader = LinkHeader::fromString($header); $selfUrl = $linkHeader->getRel('self')->getUri(); // will output 'http://localhost/service/self'
If you are using Symfony, just fetch the Link header from the Request or Response object and pass it to the library.
Creating headers
You can create header contents programmatically:
$header = new LinkHeader(); $header->add(new LinkHeaderItem('http://localhost?limit(10,10)', 'self')); $header->add(new LinkHeaderItem('http://localhost?limit(10,30)', 'next')); $header->add(new LinkHeaderItem('http://localhost?limit(10,0)', 'prev')); echo (string) $header;
Will produce
<http://localhost?limit(10,10)>; rel="self", <http://localhost?limit(10,30)>; rel="next", <http://localhost?limit(10,0)>; rel="prev"
Manipulating existing
Combining both methods above, you can also parse existing headers, manipulate them and render them.
$header = '<http://localhost/service/self>; rel="self", '<http://localhost/service/next>; rel="next"'; $linkHeader = LinkHeader::fromString($header); $linkHeader->add(new LinkHeaderItem('http://localhost?limit(10,10)', 'prev')); $linkHeader->removeRel('next'); $header->getRel('self')->setUri('http://newhost'); echo (string) $header;
Will produce
<http://newhost>; rel="self", <http://localhost?limit(10,10)>; rel="prev"
graviton/link-header-rel-parser 适用场景与选型建议
graviton/link-header-rel-parser 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 28.99k 次下载、GitHub Stars 达 3, 最近一次更新时间为 2019 年 06 月 21 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 graviton/link-header-rel-parser 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 graviton/link-header-rel-parser 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 28.99k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 3
- 点击次数: 18
- 依赖项目数: 3
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2019-06-21