为什么我在使用 oAuth2 和 curl 时总是收到 unsupported_grant_type?
Why do I keep getting unsupported_grant_type when using oAuth2 and curl?
我正在尝试通过 uber rush api 验证自己的身份,但我不断收到 unsupported_grant_type
错误消息。我不确定我在这里做错了什么。任何帮助将非常感激。下面是我使用的代码
命令行请求如下所示:
curl -F "client_secret=<CLIENT_SECRET>" \
-F "client_id=<CLIENT_ID>" \
-F "grant_type=client_credentials" \
-F "scope=delivery" \
https://login.uber.com/oauth/v2/token
这是我在PHP
中的写法
$cl = curl_init("https://login.uber.com/oauth/v2/token");
curl_setopt($cl,CURLOPT_POST,["client_secret"=>"********"]);
curl_setopt($cl,CURLOPT_POST,["client_id"=>"**********"]);
curl_setopt($cl,CURLOPT_POST,["grant_type"=>"client_credentials"]);
curl_setopt($cl,CURLOPT_POST,["scope"=>"delivery"]);
$content = curl_exec($cl);
curl_close($cl);
var_dump($content);
这不是将 POST 数据添加到 cURL 的方法。有 PHP documentation 告诉你这些选项的实际含义。试试这个:
<?php
$postdata = [
"client_secret"=>"xxx",
"client_id"=>"xxx",
"grant_type"=>"client_credentials",
"scope"=>"delivery",
];
$cl = curl_init("https://login.uber.com/oauth/v2/token");
curl_setopt_array($cl, [
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $postdata,
CURLOPT_RETURNTRANSFER => true
]);
$content = curl_exec($cl);
curl_close($cl);
var_dump($content);
如果上述答案不起作用,此答案也非常有用:Curl Grant_Type not found FIXED。
我正在尝试通过 uber rush api 验证自己的身份,但我不断收到 unsupported_grant_type
错误消息。我不确定我在这里做错了什么。任何帮助将非常感激。下面是我使用的代码
命令行请求如下所示:
curl -F "client_secret=<CLIENT_SECRET>" \
-F "client_id=<CLIENT_ID>" \
-F "grant_type=client_credentials" \
-F "scope=delivery" \
https://login.uber.com/oauth/v2/token
这是我在PHP
中的写法$cl = curl_init("https://login.uber.com/oauth/v2/token");
curl_setopt($cl,CURLOPT_POST,["client_secret"=>"********"]);
curl_setopt($cl,CURLOPT_POST,["client_id"=>"**********"]);
curl_setopt($cl,CURLOPT_POST,["grant_type"=>"client_credentials"]);
curl_setopt($cl,CURLOPT_POST,["scope"=>"delivery"]);
$content = curl_exec($cl);
curl_close($cl);
var_dump($content);
这不是将 POST 数据添加到 cURL 的方法。有 PHP documentation 告诉你这些选项的实际含义。试试这个:
<?php
$postdata = [
"client_secret"=>"xxx",
"client_id"=>"xxx",
"grant_type"=>"client_credentials",
"scope"=>"delivery",
];
$cl = curl_init("https://login.uber.com/oauth/v2/token");
curl_setopt_array($cl, [
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $postdata,
CURLOPT_RETURNTRANSFER => true
]);
$content = curl_exec($cl);
curl_close($cl);
var_dump($content);
如果上述答案不起作用,此答案也非常有用:Curl Grant_Type not found FIXED。