- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我使用了“league/oauth2-client”库并尝试从提供商处获取访问 token 。我的第一步是让授权码正常工作。当我向提供者请求访问 token 时,出现异常,例如“cURL 错误 51:SSL:没有替代证书主题名称与目标主机名‘XXX.XXX.com’匹配”。
我使用 Postman 通过给定的适当参数手动获取访问 token 。它运行良好,提供商将访问 token 返回给 postman 。
https://github.com/thephpleague/oauth2-client
$provider = new \League\OAuth2\Client\Provider\GenericProvider([
'clientId' => 'XXX',
'clientSecret' => 'YYY',
'redirectUri' => 'https://exampleclient.com/oauth',
'urlAuthorize' => 'https://example.com/OAuth2AuthorizationServer/AuthorizationController',
'urlAccessToken' => 'https://example.com/oauth/AccessTokenController',
'urlResourceOwnerDetails' => 'https://example.com/oauth/ResourceController',
'scopes' => array('BLABLA'),
'verify' => false,
]);
try {
$accessToken = $provider->getAccessToken('authorization_code', [
'code' => $_GET['code']
]);
echo 'Access Token: ' . $accessToken->getToken() . "<br>";
echo 'Refresh Token: ' . $accessToken->getRefreshToken() . "<br>";
echo 'Expired in: ' . $accessToken->getExpires() . "<br>";
echo 'Already expired? ' . ($accessToken->hasExpired() ? 'expired' : 'not expired') . "<br>";
$resourceOwner = $provider->getResourceOwner($accessToken);
var_export($resourceOwner->toArray());
die;
} catch (Exception $e) {
// Failed to get the access token or user details.
exit($e->getMessage());
}
最佳答案
league/oauth2-client 库使用 GuzzleHttp\Client 所以我们需要设置
GuzzleHttp\RequestOptions::VERIFY => false
执行此操作的最简单方法是创建一个新的 GuzzleHttp\Client 并将其 VERIFY 选项设置为 false。
$guzzyClient = new GuzzleHttp\Client([
'defaults' => [
\GuzzleHttp\RequestOptions::CONNECT_TIMEOUT => 5,
\GuzzleHttp\RequestOptions::ALLOW_REDIRECTS => true],
\GuzzleHttp\RequestOptions::VERIFY => false,
]);
$provider->setHttpClient($guzzyClient);
关于php - League\OAuth2\Client\Provider\GenericProvider SSL 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56681332/
我最近设置了一个新的 Laravel 5.5项目在 Ubuntu 16.04与 NGINX服务器。我遵循了所有正确的步骤,并不止一次地仔细检查了所有内容。我已经安装 Laravel/Passport并
我有一个联赛列表,我想在每个条目中显示投球手的数量。例如: 我想在列表中每个联盟名称下的每个列表中显示投球手的数量。例如: 这旨在快速浏览每个联赛。 我尝试使用以下代码来完成此操作: 数据库助手 //
出于某种原因,我无法推测出一段简单的代码。 我想在下面的代码中将 'wins' 除以 'played',这样在我的输出中,如果你在 4 场比赛中赢了 2 场,它会显示为 .500? 当然很简单,位置可
这个问题在这里已经有了答案: How can I use custom fonts on a website? [duplicate] (5 个答案) 关闭 7 年前。
目的是创建一个Reader 类,它是League Flysystem 之上的包装器documentation Reader 应该提供方便的方式来读取目录中的所有文件,无论文件的物理形式如何(本地文件,
我正在创建一个非常简单的 CSV 文件以供在 Laravel 5.2 中下载。我在 Mac 上。我已经使用 composer 安装了 League/CVS 库并创建了这个简单的函数: public f
对于足球联赛,我有两张 table : “teams”是一个表格,其中将所有团队列为唯一条目(“id”,'team_name') “matches”是一个显示匹配结果的表格:在列中“主场”和“客场”我
我有表: 事件 -----+-------------------+ | id | eventName | -----+-------------------+
我正在使用 League/CSV 在 Laravel 5.7 中导出模型包裹: public function export(Request $request) { $people = Per
我正在尝试使用 League OAuth2 Client允许用户验证我的 Laravel 网络应用程序以在他们的日历上设置约会。注意:我不是试图让用户登录我的网站或使用 OAuth 验证我的网站!我只
将Heroku中的laravel 5.4应用程序与aws s3连接,以保存和显示通过仪表板上传的图像。 在本地,即使上传和查看的图像都存储在我制作的存储桶中,我也没有问题。但是,当我在heroku中设
我现在正在使用 Laravel 9 开发一个 API,其中包括上传图像和视频文件的功能。对于存储,我使用 Azure Blob 存储来存储这些文件上传。我正在使用 matthewbdaly/larav
我现在正在使用 Laravel 9 开发一个 API,其中包括上传图像和视频文件的功能。对于存储,我使用 Azure Blob 存储来存储这些文件上传。我正在使用 matthewbdaly/larav
我在 MySQL 表中有梦幻足球联赛的数据。我想查询一个 php 页面的数据。 我如何创建一个查询来计算球队得分与该特定年份联盟平均得分的比较? 我的(简化的)数据表如下所示: 游戏 table :
我使用了“league/oauth2-client”库并尝试从提供商处获取访问 token 。我的第一步是让授权码正常工作。当我向提供者请求访问 token 时,出现异常,例如“cURL 错误 51:
我正在将一个项目从 Laravel 5 升级到 5.1。一个需要更新的包是 League\Flysystem。 我正在使用 Intervention\Image 调整图像大小,然后使用 Flysyst
我有这段代码可以在我的本地电脑 (MAC) 上完美运行,但是当我将所有内容都插入生产时会出现此错误: local.ERROR: League\Flysystem\Exception: Impossib
当我尝试安装 composer League/flysystem-aws-s3-v3 时出现错误 我的台词: Composer 需要联盟/flysystem-aws-s3-v3 我使用 Laravel
我有一个与 espn Fantasy Football 相关的宠物项目。我的联盟是私有(private)的,它要求我登录该网站才能导航到该页面。例如,当我转到 时在浏览器上 http://games.
我正在尝试基于 league/flysystem 在 Laravel 中构建一个文件管理系统:https://github.com/thephpleague/flysystem 我正在使用 S3 适配
我是一名优秀的程序员,十分优秀!