如何使用用户信息向GAE发送XMLHttpRequest?

时间:2015-09-02 18:56:44

标签: google-app-engine authentication xmlhttprequest

如何向标识登录用户的Google App Engine发送XMLHttpRequest?

我的网站使用内置登录系统访问该页面,如下所示:

func handler(w http.ResponseWriter, r *http.Request) {
    c := appengine.NewContext(r)
    u := user.Current(c)
    if u == nil {
        url, err := user.LoginURL(c, r.URL.String())
        if err != nil {
            http.Error(w, err.Error(), http.StatusInternalServerError)
            return
        }
        w.Header().Set("Location", url)
        w.WriteHeader(http.StatusFound)
        return
    }
    fmt.Fprintf(w, "Hello, %v!", u)
}

当从该页面执行XMLHttpRequest到同一GAE应用程序处理的其他URL时,如何包含该用户信息?

1 个答案:

答案 0 :(得分:0)

如果用户已登录,则用于标识用户的HttpOnly cookie将自动包含在XMLHttpRequest中。然后,您可以正常使用该用户:

func handler(w http.ResponseWriter, r *http.Request) {
    c := appengine.NewContext(r)
    u := user.Current(c)