繁体   English   中英

LightOpenID-如何从存储的会话中检索电子邮件?

[英]LightOpenID - how to retrieve e-mail from stored session?

我将$lightopenid->identity存储在codeigniter会话中,如下所示:

            $lightopenid           = new Lightopenid;
            $lightopenid->required = array('contact/email');

            if ($lightopenid->validate()) {

                $google_open_id = $lightopenid->identity;
                $this->session->set_userdata('google_open_id', $google_open_id);
             }

在控制器的一个单独功能中,我想检索用户的电子邮件。

            print_r($this->session->userdata('google_open_id'));

会向我显示身份链接,但是如何从中检索电子邮件?

我是否需要一个新的lightopenid实例?

有什么建议么?

您必须将电子邮件存储在会话中。 LightOpenID不存储任何内容。 为了只从身份中检索电子邮件地址,您必须重做整个身份验证。

所以,像这样:

if($openid->validate()) {
    $attributes = $openid->getAttributes();
    $this->session->set_userdata('open_id', $openid->identity);
    $this->session->set_userdata('email', $attributes['email']);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM