php から別のアプリへセッションを受け渡したい
認証済みのセッションキーを、別のアプリへ受け渡ししたい。今回は mp4 と vlc でテストした。
渡す時
<?php $url = 'http://example.com/sample.mp4'; $uri = "${uri}&PHPSESSID=".session_id(); $url = 'vlc-x-callback://x-callback-url/stream?url=$url' header("Location: {$uri}");
受け取る時
ini_set("session.use_trans_sid",true;) session_start();
フレームワークのサポートも、GET引数のチェックも何も要らない。便利。
引数の名前
デフォルトは "PHPSESSID" なので、ソレを入れても良い。
厳密にやるなら session_name()
を使う。
$uri = "${uri}&".session_name()."=".session_id(); $uri = "${uri}&sid=".session_id();
サンプル
<?php // これだけ ini_set("session.use_trans_sid",true); ini_set('session.use_only_cookies', 'off'); session_start(); if ( !empty($_SESSION['is_login']) && $_SESSION['is_login'] ) { echo "OK"; http_response_code(200); return ; }else{ echo "OK"; http_response_code(401); return ; }
参考資料
http://php.net/manual/en/session.idpassing.php
セッション
- 作者: 八津弘幸,貴矢高康事務所,棚橋なもしろ
- 出版社/メーカー: 講談社
- 発売日: 2016/04/22
- メディア: Kindle版
- この商品を含むブログを見る