upwork/php-upwork

Upwork API 的 PHP 绑定

v1.4.0 2020-09-09 00:00 UTC

README

License Latest Stable Version Package version Build status Monthly downloads

介绍

本项目基于 OAuth 1.0a,提供 Upwork API 的资源集合,来源于 http://developers.upwork.com

功能

以下是支持的 API 资源

  • 我的信息
  • 自定义支付
  • 招聘
  • 职位和自由职业者资料
  • 搜索职位和自由职业者
  • 组织
  • 消息
  • 时间和财务报告
  • 元数据
  • 快照
  • 团队
  • 工作日记
  • 活动

许可协议

版权 2015 Upwork Corporation. 版权所有。

php-upwork 采用 Apache License, Version 2.0 许可协议(以下简称“许可协议”);除非遵守许可协议,否则不得使用此文件。您可以在以下位置获取许可协议的副本:

https://apache.ac.cn/licenses/LICENSE-2.0

除非适用法律要求或书面同意,否则在许可协议下分发的软件按“原样”提供,不提供任何明示或暗示的保证或条件。有关许可协议管理权限和限制的具体语言,请参阅许可协议。

服务等级协议 (SLA)

此 API 的使用受以下条款使用规定的约束:

https://developers.upwork.com/api-tos.html

应用程序集成

要集成此库,您需要以下条件

  • PHP >= 5.3.0
  • OAuth 扩展已安装(可选),我们推荐使用官方 pecl 扩展,但如果您想使用自己的库,需要在 composer json 中删除 'ext-oauth' 行,或者不使用 composer,这也是可选的。在这种情况下,您需要在配置选项中设置 'authType' 参数。源代码中包含一个可以用来作为替代的 oauth-php 库。有关更多信息,请参阅 AuthTypes 目录,如果您想为您的客户端库创建一个认证层。
  • Composer 已安装(可选)

示例

除了这些,在 example 目录中还有一个完整的示例。这包括 console.php,用于获取访问令牌并请求非基于 Web 的应用程序的数据,以及 web.php 用于基于 Web 的应用程序。您还可以找到 console-own-auth-lib.php 文件,用于使用您自己的 php 客户端与该 Upwork 库一起使用。

还包括一个 composer.json 文件,用于与 Composer 一起使用。

Composer

为了轻松集成到您的应用程序中,我们建议使用 Composer 安装依赖项。

以下是您可以使用的一个简单的 composer.json 文件示例

{
    "name": "upwork/my-oauth-app",
    "require": {
        "upwork/php-upwork": "dev-master"
    }
}

使用 Composer 安装

upwork/php-upwork 添加到您的 composer.json 文件中,简单示例

{
    "name": "my/my-oauth-app",
    "require": {
        "upwork/php-upwork": "v1.1.0" // note: the latest release is recommended
    }
}

运行以下命令 /usr/local/bin/composer.phar update

输出应类似于

Loading composer repositories with package information
Updating dependencies (including require-dev)
  - Installing upwork/php-upwork (v1.1.0)
    Downloading: 100%         

Writing lock file
Generating autoload files

重要提示:该库支持不同的 OAuth 客户端,默认情况下它需要 PECL PHP 扩展(请参阅更多关于 https://php.ac.cn/oauth)。请确保已安装。如果您不想使用它,或者您没有安装它的可能性,您可以使用一个预加载的 php 库,称为 oauth-php(有关更多信息,请参阅 vendor-src/README)。

如果已安装 ext-oauth,则将 vendor/upwork/php-upwork/example/console.php 复制到 myapp.php

或者

如果想要使用预加载的 php 库作为 OAuth 客户端,则将 vendor/upwork/php-upwork/example/console-own-auth-lib.php 复制到 myapp.php

否则

  • 检查 vendor/upwork/php-upwork/src/Upwork/API/AuthTypes/ 并为 OAuth 创建自己的包装器
  • vendor/upwork/php-upwork/example/console-own-auth-lib.php 复制到 myapp.php
  • 之后,在 myapp.php 的配置部分更新 'authType' 属性,并指定您的处理程序名称。

注意:如果您正在创建基于Web的应用程序,请使用 web.php 示例。

打开 myapp.php 并输入您之前从API中心获取的 consumerKey 和 consumerSecret。这就完成了。运行您的应用程序,命令为 php myapp.php 并享受乐趣。

通过下载源代码进行安装

https://github.com/upwork/php-upwork/releases 下载最新版本,假设它是 https://github.com/upwork/php-upwork/archive/v1.1.0.tar.gz,并将其解压到应用程序根目录下的 vendor/upwork 文件夹中。

创建 vendor/autoload.php,一个可能的简单变体可以是

require_once __DIR__ . '/upwork/php-upwork-1.1.0/src/Upwork/API/constants.php';

spl_autoload_register('UpworkVendorAutoloader');

function UpworkVendorAutoloader($_class)
{
    $path = __DIR__ . '/upwork/php-upwork-1.1.0/src/' . str_replace('\\', '/', $_class) . '.php';
    include_once $path;
}

打开 myapp.php 并输入您之前从API中心获取的 consumerKey 和 consumerSecret。

这就完成了。运行您的应用程序,命令为 php myapp.php 并享受乐趣。