· 9 years ago · Sep 22, 2016, 08:12 AM
1$callbackUrl = "magentohost/oauth_admin.php";
2$temporaryCredentialsRequestUrl = "magentohost/oauth/initiate?oauth_callback=" . urlencode($callbackUrl);
3$adminAuthorizationUrl = 'magentohost/esgate/oauth_authorize';
4$accessTokenRequestUrl = 'magentohost/oauth/token';
5$apiUrl = 'http://magentohost/api/rest';
6$consumerKey = '4e77abaec9b6fcda9b11e89a9744c2e1';
7$consumerSecret = '94efe40eb55a8d6f1d9d88696de0d37f';
8
9session_start();
10if (!isset($_GET['oauth_token']) && isset($_SESSION['state']) && $_SESSION['state'] == 1) {
11 $_SESSION['state'] = 0;
12}
13try {
14 $authType = ($_SESSION['state'] == 2) ? OAUTH_AUTH_TYPE_AUTHORIZATION : OAUTH_AUTH_TYPE_URI;
15 $oauthClient = new OAuth($consumerKey, $consumerSecret, OAUTH_SIG_METHOD_HMACSHA1, $authType);
16 $oauthClient->enableDebug();
17
18 if (!isset($_GET['oauth_token']) && !$_SESSION['state']) {
19 $requestToken = $oauthClient->getRequestToken($temporaryCredentialsRequestUrl);
20 $_SESSION['secret'] = $requestToken['oauth_token_secret'];
21 $_SESSION['state'] = 1;
22 header('Location: ' . $adminAuthorizationUrl . '?oauth_token=' . $requestToken['oauth_token']);
23 exit;
24 } else if ($_SESSION['state'] == 1) {
25 $oauthClient->setToken($_GET['oauth_token'], $_SESSION['secret']);
26 $accessToken = $oauthClient->getAccessToken($accessTokenRequestUrl);
27 $_SESSION['state'] = 2;
28 $_SESSION['token'] = $accessToken['oauth_token'];
29 $_SESSION['secret'] = $accessToken['oauth_token_secret'];
30 header('Location: ' . $callbackUrl);
31 exit;
32 } else {
33 $oauthClient->setToken($_SESSION['token'], $_SESSION['secret']);
34 $resourceUrl = "$apiUrl/categories";
35 $oauthClient->fetch($resourceUrl);
36 $productsList = json_decode($oauthClient->getLastResponse());
37 print_r($productsList);
38 }
39} catch (OAuthException $e) {
40 print_r($e);
41}