0

私は現在、OpenId の使用を実装すると同時に学習しています。具体的にはlightopenidを使用します。それは機能していますが、ログインする必要があるユーザーが、URL www.example.com/login にアクセスするときに自動的にログイン ページにリダイレクトされるようにしたいと考えています。以下の例では、ユーザーにボタンをクリックさせ、ユーザーをログイン ページにリダイレクトします。URL www.example.com/login を使用してユーザーを Open ID ログインページに自動的にリダイレクトするにはどうすればよいですか?

# Logging in with Google accounts requires setting special identity, so this example shows how to do it.
require 'openid.php';
try {
    # Change 'localhost' to your domain name.
    $openid = new LightOpenID('localhost');
    if(!$openid->mode) {
        if(isset($_GET['login'])) {
            $openid->identity = 'https://www.google.com/accounts/o8/id';
            header('Location: ' . $openid->authUrl());
        }
?>
<form action="?login" method="post">
    <button>Login with Google</button>
</form>
<?php
    } elseif($openid->mode == 'cancel') {
        echo 'User has canceled authentication!';
    } else {
        echo 'User ' . ($openid->validate() ? $openid->identity . ' has ' : 'has not ') . 'logged in.';
    }
} catch(ErrorException $e) {
    echo $e->getMessage();
}
4

1 に答える 1

0

サインインページでこれを使用するだけです

<?php // index.php
require_once 'openid.php';
$openid = new LightOpenID("www.example.com");
$openid->identity = 'https://www.google.com/accounts/o8/id';
$openid->returnUrl = 'http://www.example.com/login';
header('Location: ' . $openid->authUrl());
?>
于 2014-05-08T14:43:38.133 に答える