:::

9-2-1 限制登入後才能取得資料

您沒有觀看影片的權限

您沒有觀看影片的權限

請先登入,登入後,確認您的權限後,即可觀看影片。

  1. app_api.php 新增一個用來取得某一活動報名資料的流程:
    // 取得某活動報名名單
    case 'tad_signup_data_index':
        echo $api->tad_signup_data_index($action_id);
        break;
    

    記得做變數過濾

    $action_id = Request::getInt('action_id');

     

  2. class\Tad_signup_api.php 新增對應方法:
    // 取得某活動報名名單
    public function tad_signup_data_index($action_id)
    {
        $data = Tad_signup_data::get_all($action_id);
        return $this->encodeJson($data);
    }

    記得 use 該物件

    use XoopsModules\Tad_signup\Tad_signup_data;

     

  3. 如此不用任何認證就會顯示所有報名資料,危險。
  4. 所以,請改成:
    // 取得某活動報名名單
    public function tad_signup_data_index($action_id)
    {
        $data = $this->token ? Tad_signup_data::get_all($action_id) : [];
        return $this->encodeJson($data);
    }

     

  5. XOOPS內建 JSON Web Token(JWT)機制,所以只要利用 $this->token 就可以判斷是否有登入。
  6. token編碼 可以檢視 cookie 中的 xoops_user_xxxxxx 得到,其值看起來像這樣(一定有包含兩個 .): eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1aWQiOjEsImV4cCI6MTYyOTYxNjQxNX0.2eJs6z04-6U4T6egbm6jQ0yDioP906DEI-f-gMuH0Xg
  7. 取得目前登入的詳細身份資料: http://localhost/modules/tad_signup/app_api.php?token=token編碼
  8. 取得報名資料: http://localhost/modules/tad_signup/app_api.php?token=token編碼&op=tad_signup_data_index&action_id=活動編號

link to https://github.com/tadlearn/tad_signup/commit/0b09a455a060c000c7101c37894ff7011468f446 \


:::

搜尋

QR Code 區塊

https%3A%2F%2Fwww.tad0616.net%2Fmodules%2Ftad_book3%2Fpage.php%3Ftbsn%3D48%26tbdsn%3D1763

書籍目錄

展開 | 闔起

線上使用者

41人線上 (16人在瀏覽線上書籍)

會員: 0

訪客: 41

更多…