當前位置: 首頁>>代碼示例>>Golang>>正文


Golang UserIdSession.SetUserId方法代碼示例

本文整理匯總了Golang中github.com/keep94/appcommon/session_util.UserIdSession.SetUserId方法的典型用法代碼示例。如果您正苦於以下問題:Golang UserIdSession.SetUserId方法的具體用法?Golang UserIdSession.SetUserId怎麽用?Golang UserIdSession.SetUserId使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在github.com/keep94/appcommon/session_util.UserIdSession的用法示例。


在下文中一共展示了UserIdSession.SetUserId方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: TestSessionUserId

func TestSessionUserId(t *testing.T) {
	s := session_util.UserIdSession{&sessions.Session{Values: make(map[interface{}]interface{})}}
	s.SetUserId(kUserId)
	s.SetLastLogin(kNow)
	id, ok := s.UserId()
	if !ok {
		t.Error("Expected a UserId")
	}
	if id != kUserId {
		t.Errorf("Expected %d, got %d", kUserId, id)
	}

	s.ClearUserId()
	id, ok = s.UserId()
	if ok {
		t.Error("Did not expect a user Id.")
	}

	lastLogin, ok := s.LastLogin()
	if !ok {
		t.Error("Expected a last login")
	}
	if lastLogin != kNow {
		t.Errorf("Expected %v, got %v", kNow, lastLogin)
	}

	s.ClearLastLogin()
	_, ok = s.LastLogin()
	if ok {
		t.Error("Did not expect a last login.")
	}

}
開發者ID:keep94,項目名稱:appcommon,代碼行數:33,代碼來源:session_test.go

示例2: newSessionStoreWithUserId

func newSessionStoreWithUserId(sessionId string, userId int64) sessions.Store {
	result := ramstore.NewRAMStore(900)
	sessionData := make(map[interface{}]interface{})
	s := session_util.UserIdSession{&sessions.Session{Values: sessionData}}
	s.SetUserId(userId)
	result.Data.Save(sessionId, sessionData)
	return result
}
開發者ID:keep94,項目名稱:appcommon,代碼行數:8,代碼來源:session_test.go

示例3: TestXsrfToken

func TestXsrfToken(t *testing.T) {
	s := session_util.UserIdSession{&sessions.Session{Values: make(map[interface{}]interface{})}}
	s.SetUserId(kUserId)
	xsrfToken := s.NewXsrfToken("MyPage", kNow.Add(15*time.Minute))
	if !s.VerifyXsrfToken(xsrfToken, "MyPage", kNow.Add(14*time.Minute)) {
		t.Error("Expected token to verify")
	}
	if s.VerifyXsrfToken(
		xsrfToken, "AnotherPage", kNow.Add(14*time.Minute)) {
		t.Error("Expected token not to verify. Wrong page")
	}
	if s.VerifyXsrfToken(xsrfToken, "MyPage", kNow.Add(15*time.Minute)) {
		t.Error("Expected token not to verify. Time expired")
	}
}
開發者ID:keep94,項目名稱:appcommon,代碼行數:15,代碼來源:session_test.go

示例4: TestXsrfTokenClearAll

func TestXsrfTokenClearAll(t *testing.T) {
	s := session_util.UserIdSession{&sessions.Session{Values: make(map[interface{}]interface{})}}
	s.SetUserId(kUserId)
	xsrfToken := s.NewXsrfToken("MyPage", kNow.Add(15*time.Minute))
	if !s.VerifyXsrfToken(xsrfToken, "MyPage", kNow) {
		t.Error("Expected token to verify")
	}
	s.ClearAll()
	if s.VerifyXsrfToken(xsrfToken, "MyPage", kNow) {
		t.Error("Expected token not to verify. Session cleared")
	}
	s.SetUserId(kUserId)
	if s.VerifyXsrfToken(xsrfToken, "MyPage", kNow) {
		t.Error("Expected token not to verify. Secret should have changed.")
	}
}
開發者ID:keep94,項目名稱:appcommon,代碼行數:16,代碼來源:session_test.go

示例5: TestXsrfTokenHack

func TestXsrfTokenHack(t *testing.T) {
	s := session_util.UserIdSession{&sessions.Session{Values: make(map[interface{}]interface{})}}
	s.SetUserId(kUserId)
	xsrfToken := s.NewXsrfToken("MyPage", kNow.Add(15*time.Minute))
	if !s.VerifyXsrfToken(xsrfToken, "MyPage", kNow) {
		t.Error("Expected token to verify")
	}
	if xsrfToken[10] != ':' {
		t.Error("Expected field dlimiter in xsrf token")
	}
	xsrfExpire := xsrfToken[:10]
	xsrfChecksum := xsrfToken[11:]
	if s.VerifyXsrfToken("", "MyPage", kNow) {
		t.Error("Missing token should not verify.")
	}
	if s.VerifyXsrfToken("garbage", "MyPage", kNow) {
		t.Error("garbage token should not verify.")
	}
	if s.VerifyXsrfToken("garbage:with_field_delimiter", "MyPage", kNow) {
		t.Error("garbage with field delimiter token should not verify.")
	}
	if s.VerifyXsrfToken(
		xsrfExpire+":garbage_checksum", "MyPage", kNow) {
		t.Error("token with garbage checksum should not verify.")
	}
	// Add one to expire in token but leave checksum the same.
	expire, err := strconv.Atoi(xsrfExpire)
	if err != nil {
		t.Errorf("Error happened parsing timestamp %v", err)
	}
	regularToken := fmt.Sprintf("%d:%s", expire, xsrfChecksum)
	hackedToken := fmt.Sprintf("%d:%s", expire+1, xsrfChecksum)
	if !s.VerifyXsrfToken(regularToken, "MyPage", kNow) {
		t.Error("Expected regular token to verify")
	}
	if s.VerifyXsrfToken(hackedToken, "MyPage", kNow) {
		t.Error("Expected hacked token not to verify")
	}
}
開發者ID:keep94,項目名稱:appcommon,代碼行數:39,代碼來源:session_test.go


注:本文中的github.com/keep94/appcommon/session_util.UserIdSession.SetUserId方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。