php - PHP OAuth 错误处理
问题描述
我正在使用 OAuth 库连接到 Etsy shop API。代码如下所示:
foreach ($transactions as $transactionSingle) {
try {
$oauth = new OAuth('xxx', 'xxx',
OAUTH_SIG_METHOD_HMACSHA1, OAUTH_AUTH_TYPE_URI);
$oauth->setToken($access_token, $access_token_secret);
$data = $oauth->fetch("https://openapi.etsy.com/v2/users/".$transactionSingle['buyer_id']."/profile", null, OAUTH_HTTP_METHOD_GET);
$json = $oauth->getLastResponse();
$results = json_decode($json, true);
} catch (OAuthException $e) {
return null;
}
}
现在的问题是我在 foreach 上多次运行此代码,如果此 URL 错误并且无法获取任何数据 - 整个函数将停止并且不再继续。在将旧用户 ID 传递给 URL 并且 $oauth->fetch 只返回消息之前,它可以正常工作:
无效的身份验证/错误请求(收到 404,预期 HTTP/1.1 20X 或重定向)
尽管有任何错误,任何想法如何继续运行该功能?
解决方案
问题在于错误引导本身。需要反斜杠
catch (\OAuthException $e) {
}
现在,如果在 catch 中没有提供代码,代码会捕获错误并继续。
推荐阅读
- math - 返回提供的 Vector2 半径中的随机点的方法,半径中心的机会高于边缘
- javascript - 反应 useState arg 函数与值
- ms-access - GROUP BY DateTime 数据类型的日期
- networking - C中IP列表的迭代
- php - 如何检查PHP函数参数值是否通过调用函数或默认值设置
- c - 打印 ASCII 金字塔
- vue.js - VueJS IE11 错误 SCRIPT5005 依赖错误
- html - HTML - Flexbox align-self 不适用
- php - 使用 PHP 按条件过滤 JSON 数组
- propertygrid - netcoreapp 中的 Propertygrid