当前位置: 首页>>代码示例>>Golang>>正文


Golang Request.Redirect方法代码示例

本文整理汇总了Golang中github.com/garyburd/twister/web.Request.Redirect方法的典型用法代码示例。如果您正苦于以下问题:Golang Request.Redirect方法的具体用法?Golang Request.Redirect怎么用?Golang Request.Redirect使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在github.com/garyburd/twister/web.Request的用法示例。


在下文中一共展示了Request.Redirect方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。

示例1: authCallbackHandler

// authCallbackHandler handles redirect from Facebook OAuth2 authorization page.
func authCallbackHandler(req *web.Request) {
	code := req.Param.Get("code")
	if code == "" {
		// should display error_reason
		req.Redirect("/", false)
		return
	}
	f, err := getUrlEncodedForm("https://graph.facebook.com/oauth/access_token",
		web.NewValues(
			"client_id", appID, // defined in settings.go
			"client_secret", appSecret, // defined in settings.go
			"redirect_uri", req.URL.Scheme+"://"+req.URL.Host+"/callback",
			"code", code))
	if err != nil {
		req.Error(web.StatusInternalServerError, err)
		return
	}
	token := f.Get("access_token")
	expires := f.Get("expires")
	if expires == "" {
		expires = "3600"
	}
	maxAge, err := strconv.Atoi(expires)
	if err != nil {
		maxAge = 3600
	} else {
		maxAge -= 30 // fudge
	}
	req.Redirect("/", false,
		web.HeaderSetCookie, web.NewCookie("fbtok", token).
			MaxAge(maxAge-30).String())
}
开发者ID:adamsxu,项目名称:twister,代码行数:33,代码来源:main.go

示例2: loginHandler

// loginHandler redirects to Facebook OAuth2 authorization page.
func loginHandler(req *web.Request) {
	m := web.NewValues(
		"client_id", appID, // defined in settings.go
		"scope", "read_stream",
		"redirect_uri", req.URL.Scheme+"://"+req.URL.Host+"/callback")
	req.Redirect("https://graph.facebook.com/oauth/authorize?"+m.FormEncodedString(), false)
}
开发者ID:adamsxu,项目名称:twister,代码行数:8,代码来源:main.go

示例3: renameTag

func renameTag(req *web.Request) {
	// oldTag := req.Param.Get("oldTag")
	newTag := req.Param.Get("newTag")
	// updateTag(oldTag, newTag)
	url := fmt.Sprintf("/tag/%s", url.QueryEscape(newTag))
	req.Redirect(url, false)
}
开发者ID:ngerakines,项目名称:gobook,代码行数:7,代码来源:main.go

示例4: pathHandler

func pathHandler(req *web.Request, targetPattern string) {
	if newPath := req.Param.Get("path"); newPath == "" {
		req.Error(web.StatusNotFound, os.NewError("Not Found."))
	} else {
		newUrl := fmt.Sprintf(targetPattern, req.URL.Scheme, req.URL.Host, newPath)
		req.Redirect(newUrl, true)
	}
}
开发者ID:awong-dev,项目名称:lwb,代码行数:8,代码来源:blog_lwbd.go

示例5: createCustomerHandler

func createCustomerHandler(req *web.Request) {
	orderId := req.Param.Get("order")
	name := req.Param.Get("name")
	email := req.Param.Get("email")
	id := NewUUID()
	storeCustomer(id.String(), name, email)
	req.Redirect("/order/?id="+orderId, false)
}
开发者ID:ngerakines,项目名称:orders,代码行数:8,代码来源:main.go

示例6: createEventHandler

func createEventHandler(req *web.Request) {
	orderId := req.Param.Get("order")
	name := req.Param.Get("name")
	value := req.Param.Get("value")
	id := NewUUID()
	storeEvent(id.String(), orderId, name, value)
	req.Redirect("/order/?id="+orderId, false)
}
开发者ID:ngerakines,项目名称:orders,代码行数:8,代码来源:main.go

示例7: viewHandler

func viewHandler(req *web.Request) {
	title := req.URLParam["title"]
	p, err := loadPage(title)
	if err != nil {
		req.Redirect("/edit/"+title, false)
		return
	}
	renderTemplate(req, "view", p)
}
开发者ID:reedobrien,项目名称:twister,代码行数:9,代码来源:final.go

示例8: login

// login redirects the user to the Twitter authorization page.
func login(req *web.Request) {
	callback := req.URL.Scheme + "://" + req.URL.Host + "/callback"
	temporaryCredentials, err := oauthClient.RequestTemporaryCredentials(http.DefaultClient, callback)
	if err != nil {
		req.Error(web.StatusInternalServerError, err)
		return
	}
	req.Redirect(oauthClient.AuthorizationURL(temporaryCredentials), false,
		web.HeaderSetCookie, credentialsCookie("tmp", temporaryCredentials, 0))
}
开发者ID:adamsxu,项目名称:twister,代码行数:11,代码来源:main.go

示例9: saveHandler

func saveHandler(req *web.Request) {
	body := req.Param.Get("body")
	title := req.URLParam["title"]
	p := &page{Title: title, Body: []byte(body)}
	err := p.save()
	if err != nil {
		req.Error(web.StatusInternalServerError, err)
		return
	}
	req.Redirect("/view/"+title, false)
}
开发者ID:reedobrien,项目名称:twister,代码行数:11,代码来源:final.go

示例10: createLineHandler

func createLineHandler(req *web.Request) {
	orderId := req.Param.Get("order")
	customer := req.Param.Get("customer")
	name := req.Param.Get("name")
	quantity := req.Param.Get("quantity")
	price := req.Param.Get("price")
	id := NewUUID()
	quantityInt, _ := strconv.Atoi(quantity)
	priceInt, _ := strconv.Atof64(price)
	storeLine(id.String(), orderId, customer, name, quantityInt, priceInt)
	req.Redirect("/order/?id="+orderId, false)
}
开发者ID:ngerakines,项目名称:orders,代码行数:12,代码来源:main.go

示例11: saveHandler

func saveHandler(req *web.Request) {
	permalink := req.Param.Get("page-permalink")
	title := req.Param.Get("page-title")
	description := req.Param.Get("page-description")
	pageTitle := req.Param.Get("page-page-title")
	keywords := req.Param.Get("page-keywords")
	content := req.Param.Get("page-content")
	template := req.Param.Get("page-template")

	byline := req.Param.Get("newsitem-byline")
	blurb := req.Param.Get("newsitem-blurb")
	fulldescription := req.Param.Get("newsitem-fulldescription")
	imagepath := req.Param.Get("newsitem-imagepath")
	externallink := req.Param.Get("newsitem-externallink")
	newscategory := req.Param.Get("newsitem-newscategory")
	contributedby := req.Param.Get("newsitem-contributedby")

	n := &NewsItem{Page: Page{Permalink: permalink,
		Title:       title,
		Description: description,
		Keywords:    keywords,
		PageTitle:   pageTitle,
		Content:     content,
		Template:    template},
		Tags:            strings.Split(req.Param.Get("newsitem-tags"), ",", -1),
		ContributedBy:   contributedby,
		Byline:          byline,
		PostedTime:      time.Seconds(),
		Blurb:           blurb,
		ImagePath:       imagepath,
		ExternalLink:    externallink,
		NewsCategory:    newscategory,
		FullDescription: fulldescription}

	mongo, err := mgo.Mongo("127.0.0.1")
	defer mongo.Close()
	if err != nil {
		panic(err)
	}

	c := mongo.DB(*database).C("newsitems")

	err = c.Upsert(bson.M{"page.permalink": permalink}, n)
	if err != nil {
		log.Println(err)
	}
	go removeCachedNewsItem(permalink)

	req.Redirect("/"+permalink, false)

}
开发者ID:bketelsen,项目名称:GopherTimes,代码行数:51,代码来源:main.go

示例12: handleSign

func handleSign(r *web.Request) {
	c := gae.Context(r)
	g := &Greeting{
		Content: r.Param.Get("content"),
		Date:    datastore.SecondsToTime(time.Seconds()),
	}
	if u := user.Current(c); u != nil {
		g.Author = u.String()
	}
	if _, err := datastore.Put(c, datastore.NewIncompleteKey("Greeting"), g); err != nil {
		r.Error(web.StatusInternalServerError, err)
		return
	}
	r.Redirect("/", false)
}
开发者ID:adamsxu,项目名称:twister,代码行数:15,代码来源:guestbook.go

示例13: authCallback

// authCallback handles OAuth callbacks from Twitter.
func authCallback(req *web.Request) {
	temporaryCredentials, err := credentials(req, "tmp")
	if err != nil {
		req.Error(web.StatusNotFound, err)
		return
	}
	s := req.Param.Get("oauth_token")
	if s == "" {
		req.Error(web.StatusNotFound, os.NewError("main: no token"))
		return
	}
	if s != temporaryCredentials.Token {
		req.Error(web.StatusNotFound, os.NewError("main: token mismatch"))
		return
	}
	tokenCredentials, _, err := oauthClient.RequestToken(http.DefaultClient, temporaryCredentials, req.Param.Get("oauth_verifier"))
	if err != nil {
		req.Error(web.StatusNotFound, err)
		return
	}
	req.Redirect("/", false,
		web.HeaderSetCookie, credentialsCookie("tok", tokenCredentials, 30),
		web.HeaderSetCookie, web.NewCookie("tmp", "").Delete().String())
}
开发者ID:adamsxu,项目名称:twister,代码行数:25,代码来源:main.go

示例14: logoutHandler

// logoutHandler logs the user out by clearing the access token cookie.
func logoutHandler(req *web.Request) {
	req.Redirect("/", false,
		web.HeaderSetCookie, web.NewCookie("fbtok", "").Delete().String())
}
开发者ID:adamsxu,项目名称:twister,代码行数:5,代码来源:main.go

示例15: paidHandler

func paidHandler(req *web.Request) {
	orderId := req.Param.Get("order")
	customerId := req.Param.Get("customer")
	payLines(orderId, customerId)
	req.Redirect("/order/?id="+orderId, false)
}
开发者ID:ngerakines,项目名称:orders,代码行数:6,代码来源:main.go


注:本文中的github.com/garyburd/twister/web.Request.Redirect方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。