承接 frankkessler/guzzle-oauth2-middleware 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

frankkessler/guzzle-oauth2-middleware

最新稳定版本:v0.1.1

Composer 安装命令:

composer require frankkessler/guzzle-oauth2-middleware

包简介

OAuth2 middleware for Guzzle - Built off of Commerceguys/guzzle-oauth2-plugin package

README 文档

README

Adapted from Commerceguys/guzzle-oauth2-plugin Provides an OAuth2 middleware for Guzzle version 6+.

Build Status Coverage Status StyleCI Latest Stable Version

Features

  • Acquires access tokens via one of the supported grant types (code, client credentials, user credentials, refresh token). Or you can set an access token yourself.
  • Supports refresh tokens (stores them and uses them to get new access tokens).
  • Handles token expiration (acquires new tokens and retries failed requests).

Running the tests

On Windows, you must put the openssl.cnf file that comes with your version of PHP at the following location:

C:\usr\local\ssl\openssl.cnf

First make sure you have all the dependencies in place by running composer install --prefer-dist. You'll also need node installed to run the tests. You can simply run make test to start the node server, run the tests and then shut down the node server.

Alternatively, if you would like to run the node server in debug mode, you can run node tests/server.js 8126 true and then run vendor/bin/phpunit to run the tests.

Example

use GuzzleHttp\Client;
use Frankkessler\Guzzle\Oauth2\GrantType\RefreshToken;
use Frankkessler\Guzzle\Oauth2\GrantType\PasswordCredentials;
use Frankkessler\Guzzle\Oauth2\Oauth2Client;

$base_uri = 'https://example.com';

$client = new Oauth2Client(['base_uri' => $base_uri]);

$config = [
    'username' => 'test@example.com',
    'password' => 'test password',
    'client_id' => 'test-client',
    'scope' => 'administration',
];

$token = new PasswordCredentials($config);
$client->setGrantType($token);

$refreshToken = new RefreshToken($config);
$client->setRefreshTokenGrantType($refreshToken);

$response = $client->get('https://example.com/api/user/me');

$response_headers = $response->getHeaders();

$response_code = $response->getStatusCode();

$response_body = (string) $response->getBody();

// Use $client->getAccessToken(); and $client->getRefreshToken() to get tokens
// that can be persisted for subsequent requests.

统计信息

  • 总下载量: 153.59k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 14
  • 点击次数: 3
  • 依赖项目数: 3
  • 推荐数: 0

GitHub 信息

  • Stars: 13
  • Watchers: 2
  • Forks: 14
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2016-09-23

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固