jobbrander/jobs-common

此软件包已被废弃且不再维护。作者建议使用jobapis/jobs-common软件包。

使您的应用程序与工作API提供商集成变得简单。

2.1.2 2017-01-21 23:16 UTC

This package is auto-updated.

Last update: 2021-12-16 17:30:24 UTC


README

标准化工作板API客户端

Latest Version Software License Build Status Coverage Status Quality Score Total Downloads

此软件包使您能够轻松将工作板API集成到您的应用程序中。无论您是想聚合工作板数据,还是想通过第三方提供商补充您网站的职位列表,或任何其他您能想到的事情,此软件包(以及以下列出的API客户端)都可以帮助您。

此软件包符合PSR-1PSR-2PSR-4PSR-7规范。如果您发现不符合规范的地方,请通过pull request发送补丁。

要求

以下版本的PHP受支持。

  • PHP 5.5
  • PHP 5.6
  • PHP 7.0
  • HHVM

使用方法

此软件包不打算单独使用,而是由以下列出的提供商使用,以访问工作板API并以标准数据格式收集结果。有关创建自己的工作板提供商的详细信息,请继续阅读!

提供商

每个支持的工作板都有一个必须扩展此软件包的AbstractProvider并实现声明的抽象方法。

以下提供商可用

官方提供商

我们支持许多官方的工作板服务。

网关 Composer软件包 维护者
Authentic Jobs jobapis/jobs-authenticjobs Steven Maguire
CareerBuilder jobapis/jobs-careerbuilder Karl Hughes
Careercast jobapis/jobs-careercast Karl Hughes
Dice jobapis/jobs-dice Karl Hughes
Elance jobapis/jobs-elance Steven Maguire
Github Jobs jobapis/jobs-github Steven Maguire
政府 jobapis/jobs-govt Karl Hughes
Indeed jobapis/jobs-indeed Steven Maguire
Jobs2Careers jobapis/jobs-jobs2careers Karl Hughes
Muse jobapis/jobs-muse Karl Hughes
JuJu jobapis/jobs-juju Karl Hughes
SimplyHired jobapis/jobs-simplyhired Karl Hughes
ZipRecruiter jobapis/jobs-ziprecruiter Karl Hughes

第三方提供商

如果您想支持其他提供商,请将其作为Composer软件包提供,然后在下面链接到它们。

这些提供程序允许与由jobs-common不支持的其他提供程序集成。它们可能需要较旧版本,如果您注意到这种情况,请通过拉取请求帮助他们。

网关 Composer软件包 维护者
Job Crank yourname/jobs-jobcrank 你!

构建自己的提供程序

可以通过克隆现有包的布局来创建新提供程序。在为您的包选择名称时,请不要使用joabpis供应商前缀,因为这暗示它是官方支持的。

您应使用自己的用户名作为供应商前缀,并在包名称前加上jobs-,以明确您的包与Jobs Common兼容。例如,如果您的GitHub用户名是prometheus,并且您正在实现Dice.com职位列表API,那么您的好 composer 包名称将是prometheus/jobs-dice

实现自己的提供程序

如果您正在使用不支持或由现有包支持的职位板服务,实现自己的提供程序相当简单。只需扩展JobApis\Jobs\Client\Providers\AbstractProviderJobApis\Jobs\Client\Queries\AbstractQuery,并在每个中实现所需的具体方法。

// JobApis\Jobs\Client\Providers\AbstractProvider

abstract public function createJobObject($payload);

abstract public function getDefaultResponseFields();

abstract public function getListingsPath();


// JobApis\Jobs\Client\Queries\AbstractQuery

abstract public function getBaseUrl();

abstract public function getKeyword();

这些具体方法中的每个都包含一个docblock,定义了它们的期望和典型行为。一旦扩展了这些类,您就可以简单地遵循上面的示例,使用您的新Provider

创建的每个职位对象将自动根据传递给提供程序的准则设置sourcequery。如果您想自定义此source值,您的提供程序必须实现一个返回表示您的提供程序源的字符串的getSource方法。

有关需要实现的具体类的示例,请参阅此存储库中的/tests/fixtures文件夹。

使您的提供程序官方化

如果您想将您的提供程序转移到jobapis GitHub组织,并将其添加到官方支持提供程序的列表中,请向jobapis/jobs-common包提交拉取请求。在新的提供程序被接受之前,它们必须拥有100%的单元测试代码覆盖率,并遵循其他Jobs Client提供程序使用的约定和代码风格。

安装

通过Composer

$ composer require jobapis/jobs-common

测试

$ ./vendor/bin/phpunit

贡献

请参阅CONTRIBUTING以获取详细信息。

致谢

许可证

Apache 2.0。请参阅许可证文件以获取更多信息。