consolibyte/quickbooks-openid-connect

Intuit QuickBooks OpenID Connect 客户端

v0.8.0 2019-01-02 19:05 UTC

This package is auto-updated.

Last update: 2024-09-25 07:25:41 UTC


README

这是对 https://github.com/jumbojett/OpenID-Connect-PHP 的分支,需要一些调整才能与 Intuit/QuickBooks 一起工作。

感谢 Michael Jett @jumbojett !

要求

  1. PHP 5.4 或更高版本
  2. CURL 扩展
  3. JSON 扩展

安装

  1. 使用 composer 安装库
composer require consolibyte/quickbooks-openid-connect
  1. 包含 composer 自动加载器
<?php
require __DIR__ . '/vendor/autoload.php';

示例 1:基本客户端

<?php
use Jumbojett\OpenIDConnectClient;

$openid = new OpenIDConnectClient('https://developer.api.intuit.com',
                                'ClientIDHere',
                                'ClientSecretHere');

$openid->addScope(array('openid', 'profile', 'email'));

对于 SANDBOX/dev

$openid->setRedirectURL('Your redirect URL');
$openid->providerConfigParam(array('userinfo_endpoint' => 'https://sandbox-accounts.platform.intuit.com/v1/openid_connect/userinfo'));

对于 PROD

$openid->setRedirectURL('Your redirect URL');

然后你可以进行认证

$oidc->authenticate();
$name = $oidc->requestUserInfo('given_name');

示例 4:请求客户端凭证令牌

<?php
use Jumbojett\OpenIDConnectClient;

$oidc = new OpenIDConnectClient('https://id.provider.com',
                                'ClientIDHere',
                                'ClientSecretHere');
$oidc->providerConfigParam(array('token_endpoint'=>'https://id.provider.com/connect/token'));
$oidc->addScope('my_scope');

// this assumes success (to validate check if the access_token property is there and a valid JWT) :
$clientCredentialsToken = $oidc->requestClientCredentialsToken()->access_token;

开发环境

在某些情况下,您可能需要在您的开发系统上禁用 SSL 安全性。注意:在生产系统上不推荐这样做。

<?php
$oidc->setVerifyHost(false);
$oidc->setVerifyPeer(false);