gbv/orcid-jskos

此软件包已废弃,不再维护。未建议替代软件包。

JSKOS 包装器,用于访问公共 ORCID API

安装: 34

依赖: 0

建议者: 0

安全性: 0

星标: 2

关注者: 7

分支: 0

开放问题: 2

类型:项目

0.2.0 2017-09-19 12:36 UTC

This package is auto-updated.

Last update: 2024-09-11 17:28:31 UTC


README

此仓库包含一个用 PHP 编写的包装器,用于通过 JSKOS 格式通过 实体查找微服务 API (ELMA) 访问公共 ORCID API

背景

开放研究人员和贡献者 ID (ORCID)》是一组代码,用于唯一标识科学和其他学术作者和贡献者。ORCID 标识符是国际标准名称标识符 (ISNI) 的一个子集,由四组 16 位数字组成。最后一位字符也可以是 X。通过在前面加上 http://orcid.org/ 前缀,可以得到一个 URI。例如

0000-0002-2997-7611
http://orcid.org/0000-0002-2997-7611

ORCID 组织提供 一个公共 API,用于访问和搜索 ORCID 简介。访问 API 需要“客户端 ID”和“客户端密钥”凭据,详情请参阅 http://support.orcid.org/knowledgebase/articles/343182

要求

需要 jskos-php PHP 库。

您还需要来自您的 ORCID 简介的客户端凭据才能访问 ORIC API。

安装

composer require gbv/jskos-bartoc

这将自动为您的项目创建 composer.json(除非已存在),并将 orcid-jskos 添加为依赖项。Composer 还会生成 vendor/autoload.php 以实现所有依赖项的自动加载。

使用

作为库使用

包装器可以作为 ORCIDService 类的实例使用,它是 \JSKOS\Service 的子类

require 'vendor/autoload.php';

$service = new ORCIDService($client_id, $client_secret);

请参阅 jskos-php-examples 了解如何将包装器作为更大 PHP 应用程序的一部分使用。

本地 Web 服务用于测试

作为服务器使用时,还需要实现 Http\Message\ResponseFactory,例如

$ composer require php-http/guzzle6-adapter

本地运行应用程序在端口 8080 上,如下所示

$ composer install
$ ORCID_CLIENT_ID=... ORCID_CLIENT_SECRET=... php -S localhost:8080

您还可以将凭据放入上面描述的 credentials.php 中。

给定有效的凭据,ORCID 简介可以这样在 JSKOS 中访问

通过 Apache 网络服务器提供的 Web 服务

  1. 运行 composer install 以将依赖项下载到 vendor 目录

  2. 添加一个包含客户端凭据的文件 credentials.php,如下所示

    <?php
    define('ORCID_CLIENT_ID', '...');
    define('ORCID_CLIENT_SECRET', '...');

您可以添加一条规则,禁止除 index.php 之外的所有直接访问

Require all denied
<Files index.php>
    Require all granted
</Files>

Heroku 上的 Web 服务

  1. 创建一个应用程序
  2. 配置应用程序
  3. 部署应用程序

简而言之

$ heroku create
$ heroku config:set ORCID_CLIENT_ID=...
$ heroku config:set ORCID_CLIENT_SECRET=...
$ git push heroku master

贡献

错误和功能请求在 GitHub 上跟踪。

请参阅 jskos-php 仓库中的 CONTRIBUTING.md 以获取一般指南。

作者和许可证

Jakob Voß jakob.voss@gbv.de

orcid-jskos 在 LGPL 许可证下授权(请参阅 LICENSE 了解详情)。