academicpuma/restclient-php

PHP REST 客户端用于 PUMA 和 BibSonomy。

1.2.5 2024-02-08 15:33 UTC

README

Latest Stable Version Latest Unstable Version Total Downloads License PHP Version Require

restclient-php 库是一个全功能的 PHP REST 客户端,用于 PUMA 和 BibSonomy。该库使用 Guzzle HTTP 客户端 进行 HTTP 请求。

目录

[TOC]

特性

  • 提供 PUMA/BibSonomy API 所支持的所有功能
  • 包含模型类,便于数据处理
  • 支持 BasicAuth 验证
  • 支持 OAuth 验证
  • 借助 Composer 自动加载和 PHP 命名空间,易于使用。

系统要求

  • PHP 7.2.0 或更高版本
  • PHP 扩展:dom、libxml、json、curl
  • Composer

变更日志

版本 1.2.5

  • 修复了解序列化 XML 时未知属性的 issues
  • 修复了 ArrayAccess 实现的警告

版本 1.2.4

  • 访问器现在可以向 guzzle 客户端传递代理
  • 修复了 Simhash Utils 的错误命名空间

版本 1.2.3

  • 修复了按作者排序的问题,当作者信息不存在时回退到编辑者

版本 1.2.2

  • 为模型获取器和设置器设置了类型
  • 重构和注释模型
  • 修复了在 XML 中渲染空列表的问题

版本 1.2.1

  • 调整为 PHP 7.2 语言级别

版本 1.2.0

  • BibSonomy OAuth 现在包含在此包中
  • 删除了与引用渲染相关的依赖项
  • 使用完全命名空间
  • 更新了 guzzle 版本
  • 支持 BibSonomy 默认条目类型,而不是使用 CSL 类型

版本 1.1.0

  • 添加对 BibSonomy 4.0.0 的支持

入门

安装

"require" : {
        "academicpuma/restclient-php": "^1.2"
}

有关 Composer 的更多信息,请参阅此处

创建客户端

为了实例化 RESTClient 对象,需要创建一个 Accessor 对象。它包含认证信息、将被添加到所有 HTTP 请求之前的基本 URL,以及 RESTClient 本身。有两种可用的 Accessor 类。一个是 "BasicAuth",另一个是 "OAuth"。

RESTClient 构造函数期望一个 Accessor 对象。

<?php

require 'path/to/vendor/autoload.php';

use AcademicPuma\RestClient\Authentication\BasicAuthAccessor;use AcademicPuma\RestClient\RESTClient;

$basicAuthAccessor = new BasicAuthAccessor('http://puma.uni-kassel.de', 'John_Doe', '123abc456def');
$restClient = new RESTClient($basicAuthAccessor);

?>

有关 Accessor 的更多信息,请参阅此处

发起请求

只需在 RESTClient 对象上调用一个方法即可触发指定的 REST-API 方法

<?php

echo $restClient->getPosts()->xml();

?>

获取有关请求的更多信息

从 REST-API 获取的信息也可以舒适地表示为模型对象

<?php

$posts = $restClient->getPosts()->model();
$post = $posts[0];
echo $post->getResource()->getTitle();

?>

PUMA 和 BibSonomy 的 OAuth

有关如何使用 OAuth 验证与 restclient-php 一起使用的更多信息,请参阅 https://bitbucket.org/bibsonomy/restclient-php/wiki/OAuth