ritson/placid-statamic

在Statamic模板中消耗RESTful API

安装: 1,202

依赖: 0

建议者: 0

安全: 0

星级: 54

关注者: 5

分支: 1

开放问题: 4

类型:statamic-addon

3.1.0 2021-07-25 12:57 UTC

This package is auto-updated.

Last update: 2024-09-20 10:34:29 UTC


README

StyleCI

Placid 允许您在 Statamic 模板中使用 Guzzle 处理请求来消耗 RESTful API。

Placid 支持:

  • 缓存/刷新
  • 模板变量对
  • 预定义请求
  • 头部
  • 访问令牌

安装

通过 composer 需求此插件

composer require ritson/placid-statamic

参数

  • host: API 主机
  • cache (number): 缓存刷新前的秒数(默认为 7200 / 2 小时)
  • handle (string): 要使用的资源的句柄
  • method (string): 您可以设置请求中使用的哪个方法,默认为 'GET'
  • query (string): 在此处添加您的查询,有关更多信息请参阅查询
  • path (string): 添加您自己的自定义路径,有关详细信息请参阅路径
  • auth (string): 要使用的认证方案的句柄

保存的请求

您可以在 resources/placid/requests 中设置 placid 的请求,如下所示

// resources/placid/requests/placeholder.yaml
host: https://jsonplaceholder.typicode.com
method: GET
path: posts/:id
auth: placeholder // See Authentication section
segments:
  id: 1
headers:
  accept: application/json
query:
  foo: bar
formParams:
  foo: bar

认证

您可以在 resources/placid/auth 中定义要使用和重用的授权方案。您这样定义它们

// resources/placid/auth/placeholder.yaml
headers:
  Authorization: Bearer :token
token: services.api.token

上述代码将通过头部发送令牌,您在配置中定义您的令牌,并像引用任何 Laravel 配置项一样引用它们。

如果您需要通过查询字符串发送访问令牌,定义您的认证方案如下

// resources/placid/auth/placeholder.yaml
query:
  access_token: :token
token: services.api.token

查询字符串和头部将与请求上已存在的任何头部合并

用法

要在模板中使用此插件,只需使用这些标签

基本示例

{{ placid handle="placeholder" }}
  {{ response.data }}
    <h1>{{ title }}</h1>
  {{ /response.data }}
{{ /placid }}

完整示例

{{ placid host="https://jsonplaceholder.typicode.com" path=":part/:id" cache="60" query="foo:bar|bar:baz" segments="part:posts|id:1" headers="foo:bar" }}
  {{ response.data }}
    <h1>{{ title }}</h1>
  {{ /response.data }}
{{ /placid }}

支持、问题、反馈

如果您想对此项目提出反馈,如果您有任何问题,请随时在twitter上联系我,如果您在此处遇到任何问题,请在此Repo上创建一个新的问题