使用PHP API

时间:2018-05-03 08:45:34

标签: php wordpress api plugins pinterest

我为WordPress用户开发了一个Pinterest插件。现在,面临Pinterest API的令牌生成问题。我已根据API docs进行相应设置和配置。在第1步中,您将获得访问代码,在第2步中,您需要借助访问代码请求访问令牌。第1步将成功,但在第2步中抛出错误响应。

我已经通过电子邮件向Pinterest支持部门提出要求,但他们说:

  

我们现在是一个小团队,我们无法提供开发支持或   请参考API。有关使用我们的API的更多支持,   我们建议您使用 Stack Overflow 等开发人员资源。

我做的代码: 我已经创建了一个APP并使用了给予应用程序ID和密码,并且还在APP中设置了重定向URL,如下所示:

$client_id = "&client_id=496200555XXXXXXXX1778834";
$client_secret = "&client_secret=48d62d7c21aa432bb5320c0aeXXXXXXXXXXX75933f6295db1bae61ffa66ca31";
$authorization_url = "https://api.pinterest.com/oauth/?";
$response_type = "response_type=code";
$state = "&state=weblizar_app";
$scope = "&scope=read_public,read_relationships";
$redirect_uri = "&redirect_uri=https://weblizar.com/pinterest-access-token.php";
$access_token_url = "https://api.pinterest.com/v1/oauth/token?";
$grant_type = "grant_type=authorization_code";

// Step 1: get authorization code
$access_code_url = $authorization_url . $response_type . $redirect_uri . $client_id . $scope . $state;
echo "<a href=$access_code_url>Get Authorization Code</a>";

// Step 2: exchange the access token
if(isset($_GET['code'])) {
    $authorization_code = $_GET['code'];
    $access_code_url = $access_token_url . $grant_type . $client_id . $client_secret ."&code=" .$authorization_code; echo "<br>";

    echo "Curl post URL - "; echo "<br>";
    $ch = curl_init();
    echo $url = $access_code_url;
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_HTTPGET, TRUE);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_TIMEOUT, 10);
    $result = trim(curl_exec($ch));
    curl_close($ch);

    echo "Curl Post Response"; echo "<br>";
    echo "<pre>";   
    print_r($result);  
    echo "<pre>";
}

在第2步之后返回的响应

{
  "message": "405: Method Not Allowed",
  "type": "http"
}

众所周知,Pinterest token generation URL不再为用户提供或关闭。

您可以测试,代码是现场实时的:https://weblizar.com/pinterest-access-token.php

任何形式的帮助都非常感激。提前谢谢。

0 个答案:

没有答案