gpt4 book ai didi

php - LinkedIn oAuth 2 问题与 client_id 参数

转载 作者:行者123 更新时间:2023-12-04 18:07:24 25 4
gpt4 key购买 nike

我正在尝试在 LinkedIn 上创建一个使用 OAuth2 进行身份验证的应用程序,但遇到了一些错误。客户端在 iOS 设备上运行,并使用 oAuth 库调用 LinkedIn 的服务器。我的 iOS 客户端成功获取了 authorization_code。然后客户端应用程序将该 authorization_code 传递到我的服务器,该服务器尝试再次连接到 linkedIN 并获取 access_token。此步骤始终失败,我从 LinkedIn 收到以下错误:{"error":"invalid_request","error_description":"missing required parameters, includes an invalid parameter value, parameter more than once.: client_id"}

我对 LInkedIN 的 POST 方法确实包含 client_id,它只包含一次,而且我已经三次检查了所有参数的值,它们是正确的。我还多次从 https://www.linkedin.com/secure/settings 重置访问权限我什至在 LinkedIn 上创建了其他应用程序,我总是得到相同的结果。

我检查了其他回复,比如这个:unable to retrieve access token linkedin api并尝试了建议:撤销 key 、请求新 key 等,似乎没有任何效果。

这是我的服务器代码:

$tokenURL = 'https://www.linkedin.com/uas/oauth2/accessToken';
$redirectURL = 'https://staging.textsuggestions.com';
$clientId = '75a4ezqh741sup';
$clientSecret = 'XXXXXXXX';

$tokenArguments = array("grant_type" => "authorization_code",
"code" => $code,
"redirect_uri" => $redirectURL,
"client_secret" => $clientSecret,
"client_id" => $clientId);

// send the request to the server getting data
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $tokenURL);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $tokenArguments);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = json_decode(curl_exec($ch), true);
curl_close($ch);

if (!empty($response["error"])) {
error_log("Error is: " . $response["error"]);
exit (0);
} else {
// no error, get the access_token and do stuff with it
$timeout = $response["expires_in"];
$access_token = $response["access_token"];
}

最佳答案

好吧,我意识到我做错了什么,我使用的客户端应用程序库正在生成完整的访问 token (而不是授权代码)。所以我试图在授权代码的位置传递访问 token 。我从 Linked In 得到的错误肯定具有误导性,我应该更仔细地检查我使用的客户端库。

关于php - LinkedIn oAuth 2 问题与 client_id 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23578439/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com