google.golang.org/appengine/user 包 (v1.6.8)

user 包为 App Engine 的用户身份验证服务提供客户端。

函数

func IsAdmin

func IsAdmin(c context.Context) bool

如果当前用户已登录,并且目前以应用管理员的身份注册,则 IsAdmin 会返回 true。

func LoginURL

func LoginURL(c context.Context, dest string) (string, error)

当用户访问时,LoginURL 会返回一个网址,提示用户登录,然后将用户重新定向到 dest 指定的网址。

func LoginURLFederated

func LoginURLFederated(c context.Context, dest, identity string) (string, error)

LoginURLFederated 与 LoginURL 类似,但接受用户的 OpenID 标识符。

func LogoutURL

func LogoutURL(c context.Context, dest string) (string, error)

当用户访问时,LogoutURL 会返回一个网址,提示用户退出账号,然后将用户重定向到 dest 指定的网址。

func OAuthConsumerKey

func OAuthConsumerKey(c context.Context) (string, error)

OAuthConsumerKey 会返回随当前请求提供的 OAuth 使用方密钥。如果 OAuth 请求无效,此方法将返回错误。

用户

type User struct {
	Email      string
	AuthDomain string
	Admin      bool

	// ID is the unique permanent ID of the user.
	// It is populated if the Email is associated
	// with a Google account, or empty otherwise.
	ID string

	// ClientID is the ID of the pre-registered client so its identity can be verified.
	// See https://developers.google.com/console/help/#generatingoauth2 for more information.
	ClientID string

	FederatedIdentity string
	FederatedProvider string
}

User 表示应用程序的用户。

func Current

func Current(c context.Context) *User

Current 会返回目前已登录的用户,如果用户未登录,则会返回 nil。

func CurrentOAuth

func CurrentOAuth(c context.Context, scopes string) (*User, error)

CurrentOAuth 会返回与发出请求的 OAuth 使用方关联的用户。如果 OAuth 使用方未发出有效的 OAuth 请求,或者范围非空且当前用户并未至少具有其中一个范围,则此方法将返回错误。

func (*User) String

func (u *User) String() string

String 返回用户的可显示姓名。