微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

AppEngine-尝试在OpenID登录后重定向到新页面

如何解决AppEngine-尝试在OpenID登录后重定向到新页面

| 我正在使用Google App Engine(Python),并使用OpenID进行登录。具体来说,我正在这里的“ Metachris \”中使用GitHub项目:https://github.com/Metachris/appengine-boilerplate 我相信代码的相关部分(用于登录的应用处理程序)在这里
class LogIn(webapp.RequestHandler):
    def get(self):
        user = users.get_current_user()
        action = decode(self.request.get(\'action\'))
        target_url = decode(self.request.get(\'continue\'))
        if action and action == \"verify\":
            f = decode(self.request.get(\'openid_identifier\'))
            url = users.create_login_url(target_url,federated_identity=f)
            self.redirect(url)
        else:
            self.response.out.write(template.render(tdir + \"login.html\",\\
                {\"continue_to\": target_url}))
login.HTML代码包括
    <!-- Simple OpenID Selector --> 
    <form action=\"/login\" method=\"get\" id=\"openid_form\"> 
        <input type=\"hidden\" name=\"action\" value=\"verify\" /> 
        {% if continue_to %}<input type=\"hidden\" name=\"continue\" value=\"{{ continue_to }}\" />{% endif %}        
        <fieldset> 
            <legend>Sign-in or Create New Account</legend> 
            <div id=\"openid_choice\"> 
                <p>Please click your account provider:</p> 
                <div id=\"openid_btns\"></div> 
            </div> 
            <div id=\"openid_input_area\"> 
                <input id=\"openid_identifier\" name=\"openid_identifier\" type=\"text\" value=\"http://\" /> 
                <input id=\"openid_submit\" type=\"submit\" value=\"Sign-In\"/> 
            </div> 
        </fieldset> 
    </form> 
    <!-- /Simple OpenID Selector --> 
现在,登录该应用程序后,人们会回到根页面。我想带他们到登录用户的新主页。我已经尝试过改变很多参数,但是我没有让它起作用。 谁能指出我要去哪里了?     

解决方法

        您没有说,您是否要在登录URL上设置\'continue \'查询参数?如果不是,请尝试
/login?continue=/logged-in
。 第一次从查询参数设置
target_url
左右,然后使用using4ѭ将其输入到您的表单中。表单中的结果是,您提交表单时查询参数将保留。下次,因为现在设置了
verify
,所以,3ѭ将被馈送到
create_login_url()
。假设openid代码执行正确的操作,则您的openid提供程序应将用户重定向回
/logged-in
。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。