· 6 years ago · Feb 18, 2019, 10:08 PM
1$callbackUrl ="http://host/mgstore/customApi/test.php";
2$temporaryCredentialsRequestUrl = "http://host/mgstore/oauth /initiate?oauth_callback=".urlencode($callbackUrl);
3$adminAuthorizationUrl = 'http://host/mgstore/admin/oauth_authorize';
4$accessTokenRequestUrl = 'http://host/mgstore/oauth/token';
5$apiUrl = 'http://host/mgstore/api/rest';
6$consumerKey = 'dfsfdsdf';
7$consumerSecret = 'sdfsdfsdf';
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
18if (!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
31
32 header('Location: ' . $callbackUrl);
33 exit;
34} else {
35 $oauthClient->setToken($_SESSION['token'], $_SESSION['secret']);
36 $resourceUrl = "$apiUrl/products";
37 $productData = json_encode(array(
38 'name' => 'TEST PRODUCT',
39 'price' => 11.11
40 ));
41
42$resourceUrl = "$apiUrl/products/337";
43$oauthClient->fetch($resourceUrl, $productData , 'PUT', array('Content-Type' => 'application/json'));
44$responseArr = json_decode($oauthClient->getLastResponse());
45print_r($responseArr);
46}
47} catch (OAuthException $e) {
48 print_r($e);
49}