ethical-jobs/ethical-jobs-sdk

v1.1.1 2019-04-08 00:57 UTC

README

composer require ethical-jobs/ethical-jobs-sdk

对于 Laravel < 5.5.x,在您的 config/app.php 文件中包含服务提供者和外观 EthicalJobs\SDK\Laravel\ServiceProvider::class'EthicalJobs' => EthicalJobs\SDK\Laravel\ApiFacade::class,。对于 Laravel >= 5.5.x,该包将自动包含服务提供者和外观。

身份验证

您需要设置 4 个环境变量来启用身份验证

{
    "AUTH_CLIENT_ID": "The client id of the oauth grant",
    "AUTH_CLIENT_SECRET": "The client secret of the oauth grant",
    "AUTH_SERVICE_USERNAME": "Username or email of the user",
    "AUTH_SERVICE_PASSWORD": "Base64 encoded password of the user",
}

身份验证使用 oauth2 进行,并返回并附加到头部的 JWT 令牌作为承载令牌。授权类型为 password 授权,因此它与用户模型相关联,因此用户的访问权限和角色。

发出请求

有许多方式可以访问 API 资源,以下是一些示例

// GET /jobs
EthicalJobs::get('/jobs', ['status' => 'APPROVED']);

// GET /jobs/drafts
EthicalJobs::get('/jobs/drafts', ['status' => 'APPROVED']);

// GET /jobs/214
EthicalJobs::get('/jobs/214');

// GET /jobs { status: APPROVED, expired: false }
EthicalJobs::resource('jobs')->approved();

// GET /jobs { expired: true }
EthicalJobs::resource('jobs')->expired();

// POST /jobs { ... }
EthicalJobs::post('/jobs', ['title' => 'React Developer', 'description' => 'We are looking for...']);

响应

如果没有结果,则将响应作为 Illuminate\Support\Collection 返回。

将来,结果将从扩展的 EthicalJobs\SDK\Collection 类返回,其中包含辅助函数,用于从我们的规范化的 API 响应中选择结果。

$collection->entities('jobs');