php - PHP Oauth 在 PHP 7.3 上获得 401,在 PHP 7.2 及更早版本上正常
问题描述
我正在尝试使用 PHP 的Oauth 模块与 Etsy 的 API 进行交互。
按照Etsy 的文档,我有
<?php
if (!extension_loaded('oauth')) {
throw new Exception('Oauth not loaded.');
}
$oauth = new OAuth("foobar-key", "foobar-secret");
$req_token = $oauth->getRequestToken(
"https://openapi.etsy.com/v2/oauth/request_token?scope=email_r%20listings_r",
"oob",
"GET"
);
使用 php7.2 运行时效果很好:
php7.2 etsy-oauth.php
...
OK
但是,当使用 php7.3 运行相同的程序时,我得到 401:
php7.3 etsy-oauth.php
...
PHP Fatal error: Uncaught OAuthException: Invalid auth/bad request (got a 401, expected HTTP/1.1 20X or a redirect)
oauth_problem=signature_invalid
OAuth 肯定是为 PHP 7.2 和 PHP 7.3 安装的,正如extension_loaded
上面所证实的,并且:
php7.2 -m | grep OAuth
OAuth
php7.3 -m | grep OAuth
OAuth
在 PHP 7.3 和 PHP 7.2 中应该如何进行相同的调用,我无法找到任何记录在案的差异。
在 PHP 7.3 中应该如何正确调用 Oauth?
解决方案
我在php7.3中遇到了同样的问题。尝试安装 OAuth 2.0.5。它对我有用
推荐阅读
- c# - 什么是 ASP.Net 核心 Web 应用程序中的无上下文和依赖于上下文的资源
- html - 将边框放置在 100% 高度和宽度的 div 中 - 右侧和底部边框在外面
- junit - 使用 Pax 考试测试内部课程
- c# - UserPrincipal 不允许我添加新用户
- asp.net-mvc - mvc 布局页面在移动设备中与 ui 行为不端
- python - 如何在 scipy.optimize.newton_krylov 中更新预处理器
- python - 使用 shell 脚本复制和替换文件中特定行的列
- postgresql - 无法在 PostGIS Cookbook 中开始使用
- python - 使用 scipy stats 将理论分布拟合到采样的经验 CDF
- swift - Swift Firebase 中的推送通知