Explorar o código

Token Expiry Check Implemented

Anand Ayyappan hai 1 ano
pai
achega
ea30139129
Modificáronse 3 ficheiros con 59 adicións e 41 borrados
  1. 21 15
      api/v1/addService/index.php
  2. 21 15
      api/v1/removeService/index.php
  3. 17 11
      api/v1/updateLocation/index.php

+ 21 - 15
api/v1/addService/index.php

@@ -12,23 +12,29 @@ if ($userInputData !== null) {
    $headers = explode(" ", trim($_SERVER["HTTP_AUTHORIZATION"]));
    $key = '97eda3db6f898bfb1f821178d1c27064';
    $jwt = $headers[1];
-   $decoded = JWT::decode($jwt, new Key($key, 'HS256'));
-   //print_r($decoded);
-   $client = new Client('mongodb://kpadmin:AnandAyyappan1981@127.0.0.1:27017/?authSource=kpmaster');
-   $collection = $client->selectCollection('kpmaster', 'kpu');
-   //$cursor = $collection->aggregate([['$geoNear' => ['near' => ['type' => 'Point', 'coordinates' => [76.93, 8.52]], 'spherical' => true, 'query' => ['srvs' => ['$all' => ['Painting']]], 'distanceField' => 'Dis', 'maxDistance' => 2000, 'includeLocs' => 'loc']], ['$project' => ['ID'=>'$oid', 'Name' => '$fn', 'Distance' => '$Dis', 'Location' => '$loc']]]);
-   $updateResult = $collection->updateOne(
-      ['_id' => new ObjectId($decoded->kpid)],
-      ['$addToSet' => ['srvs' => $userInputData["service"]]]
-   );
+   try {
+      $decoded = JWT::decode($jwt, new Key($key, 'HS256'));
+      //print_r($decoded);
+      $client = new Client('mongodb://kpadmin:AnandAyyappan1981@127.0.0.1:27017/?authSource=kpmaster');
+      $collection = $client->selectCollection('kpmaster', 'kpu');
+      //$cursor = $collection->aggregate([['$geoNear' => ['near' => ['type' => 'Point', 'coordinates' => [76.93, 8.52]], 'spherical' => true, 'query' => ['srvs' => ['$all' => ['Painting']]], 'distanceField' => 'Dis', 'maxDistance' => 2000, 'includeLocs' => 'loc']], ['$project' => ['ID'=>'$oid', 'Name' => '$fn', 'Distance' => '$Dis', 'Location' => '$loc']]]);
+      $updateResult = $collection->updateOne(
+         ['_id' => new ObjectId($decoded->kpid)],
+         ['$addToSet' => ['srvs' => $userInputData["service"]]]
+      );
 
-   if ($updateResult->getModifiedCount() == 1) {
-      $message['status'] = true;
-      $message['statusMessage'] =  "Service Added Successfully";
-   } else {
+      if ($updateResult->getModifiedCount() == 1) {
+         $message['status'] = true;
+         $message['statusMessage'] =  "Service Added Successfully";
+      } else {
+         $message['status'] = false;
+         $message['statusCode'] = 'KP005';
+         $message['statusMessage'] =  "Service Addition Failed";
+      }
+   } catch (\Firebase\JWT\ExpiredException $exception) {
       $message['status'] = false;
-      $message['statusCode'] = 'KP005';
-      $message['statusMessage'] =  "Service Addition Failed";
+      $message['statusCode'] = "KP010";
+      $message['statusMessage'] = "Login Token Expired! Kindly Re Login.";
    }
 } else {
    $message['status'] = false;

+ 21 - 15
api/v1/removeService/index.php

@@ -12,23 +12,29 @@ if ($userInputData !== null) {
    $headers = explode(" ", trim($_SERVER["HTTP_AUTHORIZATION"]));
    $key = '97eda3db6f898bfb1f821178d1c27064';
    $jwt = $headers[1];
-   $decoded = JWT::decode($jwt, new Key($key, 'HS256'));
-   //print_r($decoded);
-   $client = new Client('mongodb://kpadmin:AnandAyyappan1981@127.0.0.1:27017/?authSource=kpmaster');
-   $collection = $client->selectCollection('kpmaster', 'kpu');
-   //$cursor = $collection->aggregate([['$geoNear' => ['near' => ['type' => 'Point', 'coordinates' => [76.93, 8.52]], 'spherical' => true, 'query' => ['srvs' => ['$all' => ['Painting']]], 'distanceField' => 'Dis', 'maxDistance' => 2000, 'includeLocs' => 'loc']], ['$project' => ['ID'=>'$oid', 'Name' => '$fn', 'Distance' => '$Dis', 'Location' => '$loc']]]);
-   $updateResult = $collection->updateOne(
-      ['_id' => new ObjectId($decoded->kpid)],
-      ['$pull' => ['srvs' => $userInputData["service"]]]
-   );
+   try {
+      $decoded = JWT::decode($jwt, new Key($key, 'HS256'));
+      //print_r($decoded);
+      $client = new Client('mongodb://kpadmin:AnandAyyappan1981@127.0.0.1:27017/?authSource=kpmaster');
+      $collection = $client->selectCollection('kpmaster', 'kpu');
+      //$cursor = $collection->aggregate([['$geoNear' => ['near' => ['type' => 'Point', 'coordinates' => [76.93, 8.52]], 'spherical' => true, 'query' => ['srvs' => ['$all' => ['Painting']]], 'distanceField' => 'Dis', 'maxDistance' => 2000, 'includeLocs' => 'loc']], ['$project' => ['ID'=>'$oid', 'Name' => '$fn', 'Distance' => '$Dis', 'Location' => '$loc']]]);
+      $updateResult = $collection->updateOne(
+         ['_id' => new ObjectId($decoded->kpid)],
+         ['$pull' => ['srvs' => $userInputData["service"]]]
+      );
 
-   if ($updateResult->getModifiedCount() == 1) {
-      $message['status'] = true;
-      $message['statusMessage'] =  "Service Removed Successfully";
-   } else {
+      if ($updateResult->getModifiedCount() == 1) {
+         $message['status'] = true;
+         $message['statusMessage'] =  "Service Removed Successfully";
+      } else {
+         $message['status'] = false;
+         $message['statusCode'] = 'KP005';
+         $message['statusMessage'] =  "Service Removal Failed";
+      }
+   } catch (\Firebase\JWT\ExpiredException $exception) {
       $message['status'] = false;
-      $message['statusCode'] = 'KP005';
-      $message['statusMessage'] =  "Service Removal Failed";
+      $message['statusCode'] = "KP010";
+      $message['statusMessage'] = "Login Token Expired! Kindly Re Login.";
    }
 } else {
    $message['status'] = false;

+ 17 - 11
api/v1/updateLocation/index.php

@@ -12,19 +12,25 @@ if ($userInputData !== null) {
     $headers = explode(" ", trim($_SERVER["HTTP_AUTHORIZATION"]));
     $key = '97eda3db6f898bfb1f821178d1c27064';
     $jwt = $headers[1];
-    $decoded = JWT::decode($jwt, new Key($key, 'HS256'));
-    //print_r($decoded);
-    $client = new Client('mongodb://kpadmin:AnandAyyappan1981@127.0.0.1:27017/?authSource=kpmaster');
-    $collection = $client->selectCollection('kpmaster', 'kpu');
-    $return = $collection->updateOne(['_id' => new ObjectId($decoded->kpid)], ['$set' => ['location' => ['coordinates' => [$userInputData["long"], $userInputData["lat"]], 'type' => "Point"]]]);
+    try {
+        $decoded = JWT::decode($jwt, new Key($key, 'HS256'));
+        //print_r($decoded);
+        $client = new Client('mongodb://kpadmin:AnandAyyappan1981@127.0.0.1:27017/?authSource=kpmaster');
+        $collection = $client->selectCollection('kpmaster', 'kpu');
+        $return = $collection->updateOne(['_id' => new ObjectId($decoded->kpid)], ['$set' => ['location' => ['coordinates' => [$userInputData["long"], $userInputData["lat"]], 'type' => "Point"]]]);
 
-    if ($return->getModifiedCount() == 1) {
-        $message['status'] = true;
-        $message['statusMessage'] =  "Location updated successfully";
-    } else {
+        if ($return->getModifiedCount() == 1) {
+            $message['status'] = true;
+            $message['statusMessage'] =  "Location updated successfully";
+        } else {
+            $message['status'] = false;
+            $message['statusCode'] = 'KP005';
+            $message['statusMessage'] =  "Location updation Failed";
+        }
+    } catch (\Firebase\JWT\ExpiredException $exception) {
         $message['status'] = false;
-        $message['statusCode'] = 'KP005';
-        $message['statusMessage'] =  "Location updation Failed";
+        $message['statusCode'] = "KP010";
+        $message['statusMessage'] = "Login Token Expired! Kindly Re Login.";
     }
 } else {
     $message['status'] = false;