robwdwd/arbor-api-bundle

此包已被废弃且不再维护。未建议替代包。

Arbor Sightline API Symfony Bundle。

安装: 91

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 1

开放问题: 0

类型:symfony-bundle

v2.0.3 2023-11-24 16:24 UTC

This package is auto-updated.

Last update: 2024-06-23 11:01:23 UTC


README

ArborAPI Symfony Bundle

Symfony Bundle 用于与 Arbor Sightline API 交互。

什么是 ArborAPI Bundle?

ArborAPI 是一个用于通过 REST、Web 服务或 SOAP 与 Arbor Sightline 部署交互的 Symfony Bundle。

功能

ArborAPI 支持以下内容

  • 支持将 Arbor REST API 作为服务。
  • 支持将 Arbor Web 服务 API 作为服务。
  • 支持将 Arbor SOAP API 作为服务。
  • 可选的 Sightline 响应缓存。
  • 当前正在测试 Arbor SP 9.5,但应适用于大多数 9.x 版本及以上。

需求

ArborAPI PHP 类需要以下内容

  • PHP 8.1 或更高版本
  • symfony/http-client
  • symfony/cache
  • ext/dom
  • ext/soap

安装

请确保全局已安装 Composer,如 Composer 文档中的 安装章节 所述。

使用 Symfony Flex 的应用程序

打开命令行控制台,进入您的项目目录,并执行以下命令

composer require robwdwd/arbor-api-bundle

未使用 Symfony Flex 的应用程序

步骤 1:下载 Bundle

打开命令行控制台,进入您的项目目录,并执行以下命令以下载此 Bundle 的最新稳定版本

composer require arbor-api-bundle

步骤 2:启用 Bundle

然后,通过将其添加到项目 config/bundles.php 文件中注册的 Bundle 列表中来启用 Bundle

// config/bundles.php

return [
    // ...
    Robwdwd\ArborApiBundle\ArborApiBundle::class => ['all' => true],
];

配置

配置在 config/packages/robwdwd_arbor_api.yaml 中完成,尽管这可以是任何文件名。

arbor_api:
    hostname:   '%env(string:ARBOR_HOSTNAME)%'
    wskey:      '%env(string:ARBOR_WS_KEY)%'
    resttoken:  '%env(string:ARBOR_REST_TOKEN)%'
    username:   '%env(string:ARBOR_SOAP_USERNAME)%'
    password:   '%env(string:ARBOR_SOAP_PASSWORD)%'
    wsdl:       '%env(string:ARBOR_SOAP_WSDL)%'
    cache:      true
    cache_ttl:  300

然后在您的 .env.local(或您希望使用的任何其他环境文件)中添加以下内容

ARBOR_HOSTNAME="sp.example.com"
ARBOR_WS_KEY="pieWoojiekoo2oozooneeThi"
ARBOR_REST_TOKEN="Yohmeishuongoh0goeYu9haeph9goh8oogovaeth"
ARBOR_SOAP_USERNAME="user"
ARBOR_SOAP_PASSWORD="Password1234"
ARBOR_SOAP_WSDL="PeakflowSP.wsdl"

缓存

默认情况下,此 Bundle 不缓存 Sightline/SP 的响应。在配置中将缓存设置为 true 将会将响应缓存到 cache.app 池中。默认情况下,它将响应缓存五分钟(300秒)。您可以使用 cache_ttl 配置设置更改此。

您可以使用 setShouldCache(bool) 函数在当前实例中开启和关闭缓存。$restApi->setShouldCache(false)

如果您在 symfony 应用程序中使用了文件系统缓存,您需要手动修剪缓存以定期删除过时的条目。您可以将此设置为 cron 作业。

php bin/console cache:pool:prune

用法

Web 服务和 SOAP

REST API