ログインのセッション管理用のAPIをPHPのcURLでコントロールしたいのですが、正しい方法が知りたく、、ご教示いただけましたら幸いです。
【行いたい事】
(1)phpのcURLでログイン認証APIを叩いてレスポンスからトークンだけを抜き出したい
php
1現状 2#HttpOnly_exampledomain.com FALSE / FALSE 0 PLAY_SESSION pTGfeu6J52h9d0zjOBRNwBCQ0CZZShcGYUGVjHOXvguZt0OSOyBbIm2AmHlyTUP1IrqoIYsbWJlUpK7zjjFQjXpo5vMjQ75jQb6Qh7hevBhwydvOIjEkS53o66SSm8L3kI2bZIaX02i9VyV5Fv21B5ZbpX4UjDN 3 4↓ 5やりたい事(トークン部分だけ抜き出す) 6pTGfeu6J52h9d0zjOBRNwBCQ0CZZShcGYUGVjHOXvguZt0OSOyBbIm2AmHlyTUP1IrqoIYsbWJlUpK7zjjFQjXpo5vMjQ75jQb6Qh7hevBhwydvOIjEkS53o66SSm8L3kI2bZIaX02i9VyV5Fv21B5ZbpX4UjDN
【cURLの記述】
php
1$jsondata = [ 2 "id" => "userid", 3 "password" => "examplepass" 4]; 5 6$baseurl = "https:/xxxxxxxxxxx/login/"; 7$header = [ 8 'Content-Type: application/json', 9]; 10 11$cookie=tempnam(sys_get_temp_dir(),'cookie_'); 12$curl = curl_init(); //1.初期化 13curl_setopt($curl, CURLOPT_URL, $baseurl); //2.URLをセット 14curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST'); //3.HTTP リクエストをセット(GET,POST等) 15curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); //文字列で返す 16curl_setopt($curl, CURLOPT_COOKIEJAR, $cookie); 17curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($jsondata)); // jsonデータを送信 18curl_setopt($curl, CURLOPT_HTTPHEADER, $header); // リクエストにヘッダーを含める 19curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); 20curl_setopt($curl, CURLOPT_HEADER, true); 21curl_setopt($curl, CURLOPT_HEADER, true); 22 23$response = curl_exec($curl); 24$header_size = curl_getinfo($curl, CURLINFO_HEADER_SIZE); 25$cookie_info = curl_getinfo($curl, CURLINFO_COOKIELIST ); 26$header = substr($response, 0, $header_size); 27$body = substr($response, $header_size); 28$result = json_decode($body, true) ; 29 30curl_close($curl); // 6.終了 31var_dump($cookie_info); 32 33//var_dump($cookie_info); の結果↓ 34array(1) { 35 [0]=> 36 string(213) "#HttpOnly_exampledomain.com FALSE / FALSE 0 PLAY_SESSION pTGfeu6J52h9d0zjOBRNwBCQ0CZZShcGYUGVjHOXvguZt0OSOyBbIm2AmHlyTUP1IrqoIYsbWJlUpK7zjjFQjXpo5vMjQ75jQb6Qh7hevBhwydvOIjEkS53o66SSm8L3kI2bZIaX02i9VyV5Fv21B5ZbpX4UjDN" 37}

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。