request = $request = \Config\Services::request(); } public function index() { } public function users() { header('Access-Control-Allow-Origin: *'); //header("Access-Control-Allow-Origin: http://localhost:9057 "); header('Access-Control-Expose-Headers: Access-Control-Allow-Origin'); //header('Access-Control-Allow-Credentials: true '); //header("Access-Control-Allow-Headers: Cache-Control, Pragma, Origin, Authorization, Content-Type, X-Requested-With"); header('Access-Control-Allow-Methods: POST, GET, PUT, DELETE, OPTIONS'); header('Content-type: application/json'); // what is the endpoint $uri = current_url(true); $pieces = explode('/', $uri); $psc = count($pieces); $endpoint = $psc > 0 ? $pieces[$psc - 1] : ''; $endpoints = [ 'account' => ['POST'], 'login' => ['POST'], 'resetpass' => ['POST'], ]; $res1 = []; if (array_key_exists($endpoint, $endpoints)) { } else { http_response_code(404); // tell the user product does not exist echo json_encode(['message' => 'Endpoint not found.']); } // echo "EXYTACT INPUT DATA HERE"; $raw_json = file_get_contents('php://input'); $raw_array = json_decode($raw_json, true); switch ($endpoint) { case 'login': $userAccess = new \App\Models\userAccess(); $res1 = $userAccess->startLogin($raw_array); break; case 'account': $res1 = $this->dummyData($raw_array); break; case 'resetpass': $res1 = [ 'email' => $raw_array['email'], 'status' => 1, ]; } return $this->response->setJson($res1); } //this is dummy function to establish the endpoints before real implementations private function dummyData($raw_array) { return [ 'msg' => 'Not implemented yet', 'raw_data' => $raw_array, ]; } }