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


Golang dozy.AuthContext類代碼示例

本文整理匯總了Golang中dozy.AuthContext的典型用法代碼示例。如果您正苦於以下問題:Golang AuthContext類的具體用法?Golang AuthContext怎麽用?Golang AuthContext使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


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

示例1: GetRideLikes

func GetRideLikes(reqJson []byte, qs map[string][]string, uri []string, ac *dozy.AuthContext, rawDb interface{}) (uint, []byte, string) {
	db := rawDb.(GetRideLikesDb)

	rideId, err := strconv.Atoi(uri[1])
	if err != nil {
		panic(err)
	}

	startingLikeNum, err1 := strconv.Atoi(qs["startingLikeNum"][0])
	if err1 != nil {
		panic(err1)
	}

	numLikesToFetch, err2 := strconv.Atoi(qs["numLikesToFetch"][0])
	if err2 != nil {
		panic(err2)
	}

	if numLikesToFetch > 25 {
		return dozy.StatusBadRequest, []byte(""), ""
	}

	if !ac.GetLoggedIn() {
		return dozy.StatusIncorrectPermissions, []byte(""), ""
	}

	status, returnJson := db.GetLikes(uint(rideId), startingLikeNum, numLikesToFetch)
	if status != mongodb.ReadSucceeded {
		return dozy.StatusBadRequest, []byte(""), ""
	}

	return dozy.StatusGetOk, returnJson, ""

}
開發者ID:hdiwan,項目名稱:RedRoute,代碼行數:34,代碼來源:ride.go

示例2: GetRideLikesUser

func GetRideLikesUser(reqJson []byte, qs map[string][]string, uri []string, ac *dozy.AuthContext, rawDb interface{}) (uint, []byte, string) {
	db := rawDb.(GetRideLikesUserDb)

	rideId, err := strconv.Atoi(uri[1])
	if err != nil {
		panic(err)
	}

	userId, err := strconv.Atoi(uri[3])
	if err != nil {
		panic(err)
	}

	if !ac.GetLoggedIn() {
		return dozy.StatusIncorrectPermissions, []byte(""), ""
	}

	status, returnJson := db.DidLike(uint(rideId), uint(userId))
	if status != mongodb.ReadSucceeded {
		return dozy.StatusBadRequest, []byte(""), ""
	}

	return dozy.StatusGetOk, returnJson, ""

}
開發者ID:hdiwan,項目名稱:RedRoute,代碼行數:25,代碼來源:ride.go

示例3: PutRideLikesUser

func PutRideLikesUser(reqJson []byte, qs map[string][]string, uri []string, ac *dozy.AuthContext, rawDb interface{}) (uint, []byte, string) {
	db := rawDb.(PutRideLikesUserDb)

	rideId, err := strconv.Atoi(uri[1])
	if err != nil {
		panic(err)
	}

	userId, err := strconv.Atoi(uri[3])
	if err != nil {
		panic(err)
	}

	if !ac.GetLoggedIn() || ac.GetUserId() != uint(userId) {
		return dozy.StatusIncorrectPermissions, []byte(""), ""
	}

	isLiked := bson.M{}
	unmarshalErr := json.Unmarshal(reqJson, &isLiked)
	if unmarshalErr != nil {
		panic(unmarshalErr)
	}

	status, returnJson := db.AddLike(uint(rideId), uint(userId), isLiked["isLiked"].(bool))
	if status != mongodb.WriteSucceeded {
		return dozy.StatusBadRequest, []byte(""), ""
	}

	return dozy.StatusGetOk, returnJson, ""
}
開發者ID:hdiwan,項目名稱:RedRoute,代碼行數:30,代碼來源:ride.go

示例4: PostRideComments

func PostRideComments(reqJson []byte, qs map[string][]string, uri []string, ac *dozy.AuthContext, rawDb interface{}) (uint, []byte, string) {
	db := rawDb.(PostRideCommentsDb)

	comment := bson.M{}
	unmarshalErr := json.Unmarshal(reqJson, &comment)
	if unmarshalErr != nil {
		panic(unmarshalErr)
	}

	rideId, err := strconv.Atoi(uri[1])
	if err != nil {
		panic(err)
	}

	if !ac.GetLoggedIn() {
		return dozy.StatusIncorrectPermissions, []byte(""), ""
	}

	status, returnJson, location := db.PostComment(uint(rideId), ac.GetUserId(), comment["content"].(string))
	if status != mongodb.WriteSucceeded {
		return dozy.StatusBadRequest, []byte(""), ""
	}

	return dozy.StatusPutOk, returnJson, location

}
開發者ID:hdiwan,項目名稱:RedRoute,代碼行數:26,代碼來源:ride.go

示例5: PutRideTip

func PutRideTip(reqJson []byte, qs map[string][]string, uri []string, ac *dozy.AuthContext, rawDb interface{}) (uint, []byte, string) {
	db := rawDb.(PutRideTipDb)

	tip := bson.M{}
	unmarshalErr := json.Unmarshal(reqJson, &tip)
	if unmarshalErr != nil {
		panic(unmarshalErr)
	}

	rideId, err := strconv.Atoi(uri[1])
	if err != nil {
		panic(err)
	}

	if !ac.GetLoggedIn() {
		return dozy.StatusIncorrectPermissions, []byte(""), ""
	}

	status, returnJson := db.UpdateTip(uint(rideId), ac.GetUserId(), uint(tip["tip"].(int)))
	if status != mongodb.WriteSucceeded {
		return dozy.StatusBadRequest, []byte(""), ""
	}

	return dozy.StatusPutOk, returnJson, ""

}
開發者ID:hdiwan,項目名稱:RedRoute,代碼行數:26,代碼來源:ride.go

示例6: DeleteAuthtoken

func DeleteAuthtoken(reqJson []byte, qs map[string][]string, uri []string, ac *dozy.AuthContext) (uint, []byte, string) {
	if !ac.GetLoggedIn() {
		return dozy.StatusIncorrectPermissions, []byte(""), ""
	}

	ac.Logout()

	return dozy.StatusDeleteOk, []byte(""), ""
}
開發者ID:hdiwan,項目名稱:RedRoute,代碼行數:9,代碼來源:authtoken.go

示例7: PostRide

func PostRide(reqJson []byte, qs map[string][]string, uri []string, ac *dozy.AuthContext, rawDb interface{}) (uint, []byte, string) {
	db := rawDb.(PostRideDb)

	ride := bson.M{}
	unmarshalErr := json.Unmarshal(reqJson, &ride)
	if unmarshalErr != nil {
		panic(unmarshalErr)
	}

	if !ac.GetLoggedIn() {
		return dozy.StatusIncorrectPermissions, []byte(""), ""
	}

	returnJson, location := db.SetRide(ride, ac.GetUserId())

	return dozy.StatusPostOk, returnJson, location
}
開發者ID:hdiwan,項目名稱:RedRoute,代碼行數:17,代碼來源:ride.go

示例8: GetAuthtokenEmail

func GetAuthtokenEmail(reqJson []byte, qs map[string][]string, uri []string, ac *dozy.AuthContext, rawDb interface{}) (uint, []byte, string) {
	db := rawDb.(GetAuthtokenEmailDb)

	var resJson map[string]interface{}

	if ac.GetLoggedIn() {
		return dozy.StatusIncorrectPermissions, []byte(""), ""
	}

	getHashStatus, hash, userId := db.GetUserHashIdByEmail(qs["email"][0])

	if getHashStatus == mongodb.ReadSucceeded {
		loginOk, needNewHash, newHash := ac.Login(userId, qs["password"][0], hash)

		if loginOk {
			resJson = map[string]interface{}{
				"succeeded": true,
				"authtoken": ac.GetAuthtoken(),
				"userId":    ac.GetUserId(),
			}

			if needNewHash {
				updateHashStatus := db.UpdateHashById(userId, newHash)

				if updateHashStatus != mongodb.WriteSucceeded {
					panic(updateHashStatus)
				}
			}
		} else {
			resJson = map[string]interface{}{
				"succeeded":              false,
				"failedDueToBadPassword": true,
				"failedDueToBadUsername": false,
			}
		}
	} else if getHashStatus == mongodb.ReadNotFound {
		resJson = map[string]interface{}{
			"succeeded":              false,
			"failedDueToBadPassword": false,
			"failedDueToBadUsername": true,
		}
	} else {
		panic(getHashStatus)
	}

	resJsonBytes, marshalErr := json.Marshal(resJson)
	if marshalErr != nil {
		panic(marshalErr)
	}
	return dozy.StatusGetOk, resJsonBytes, ""
}
開發者ID:hdiwan,項目名稱:RedRoute,代碼行數:51,代碼來源:authtoken.go

示例9: PutUsersDebtsPaymentToken

func PutUsersDebtsPaymentToken(reqJson []byte, qs map[string][]string, uri []string, ac *dozy.AuthContext, rawDb interface{}) (uint, []byte, string) {
	db := rawDb.(PutUsersDebtsPaymentTokenDb)

	userId, convErr := strconv.Atoi(uri[1])
	if convErr != nil {
		return dozy.StatusBadRequest, []byte(""), ""
	}

	if !ac.GetLoggedIn() || ac.GetUserId() != uint(userId) {
		return dozy.StatusIncorrectPermissions, []byte(""), ""
	}

	paymentToken := bson.M{}
	unmarshalErr := json.Unmarshal(reqJson, &paymentToken)
	if unmarshalErr != nil {
		panic(unmarshalErr)
	}

	paymentToken["timeStamp"] = time.Now().Unix()

	status, returnJson := db.UpdatePaymentInfo(ac.GetUserId(), paymentToken)
	if status != mongodb.WriteSucceeded {
		return dozy.StatusNotFound, []byte(""), ""
	}

	return dozy.StatusPutOk, returnJson, ""
}
開發者ID:hdiwan,項目名稱:RedRoute,代碼行數:27,代碼來源:users.go

示例10: PutUsersSettings

func PutUsersSettings(reqJson []byte, qs map[string][]string, uri []string, ac *dozy.AuthContext, rawDb interface{}) (uint, []byte, string) {
	db := rawDb.(PutUsersSettingsDb)
	userId, convErr := strconv.Atoi(uri[1])
	if convErr != nil {
		return dozy.StatusBadRequest, []byte(""), ""
	}

	if !ac.GetLoggedIn() || ac.GetUserId() != uint(userId) {
		return dozy.StatusIncorrectPermissions, []byte(""), ""
	}

	j := dozy.JsonObj{}
	unmarshalErr := json.Unmarshal(reqJson, &j)
	if unmarshalErr != nil {
		panic(unmarshalErr)
	}

	updateStatus, emailExists := db.UpdateSettings(ac.GetUserId(), j)
	if updateStatus != mongodb.WriteSucceeded {
		if emailExists {
			return dozy.StatusBadRequest, []byte(`{"succeeded": false, "failedBecauseEmailAlreadyExists": true}`), ""
		}
		return dozy.StatusBadRequest, []byte(`"{succeeded": false, "failedBecauseEmailAlreadyExists": false}`), ""
	}

	return dozy.StatusPutOk, []byte(`"{succeeded": true}`), ""
}
開發者ID:hdiwan,項目名稱:RedRoute,代碼行數:27,代碼來源:users.go

示例11: PutRideAcceptSplit

func PutRideAcceptSplit(reqJson []byte, qs map[string][]string, uri []string, ac *dozy.AuthContext, rawDb interface{}) (uint, []byte, string) {
	db := rawDb.(PutAcceptSplitDb)

	splitDetails := bson.M{}
	unmarshalErr := json.Unmarshal(reqJson, &splitDetails)
	if unmarshalErr != nil {
		panic(unmarshalErr)
	}

	rideId, err := strconv.Atoi(uri[1])
	if err != nil {
		panic(err)
	}

	status, returnJson := db.AcceptSplit(uint(rideId), ac.GetUserId(), splitDetails["paymentNonce"].(string), uint(splitDetails["tip"].(int)))
	if status != mongodb.WriteSucceeded {
		return dozy.StatusBadRequest, []byte(""), ""
	}

	return dozy.StatusPutOk, returnJson, ""

}
開發者ID:hdiwan,項目名稱:RedRoute,代碼行數:22,代碼來源:ride.go

示例12: GetUsersNotificationsCount

func GetUsersNotificationsCount(reqJson []byte, qs map[string][]string, uri []string, ac *dozy.AuthContext, rawDb interface{}) (uint, []byte, string) {
	db := rawDb.(GetUsersNotificationsCountDb)

	userId, convErr := strconv.Atoi(uri[1])
	if convErr != nil {
		return dozy.StatusBadRequest, []byte(""), ""
	}

	if !ac.GetLoggedIn() || ac.GetUserId() != uint(userId) {
		return dozy.StatusIncorrectPermissions, []byte(""), ""
	}

	status, returnJson := db.GetNotificationsCount(ac.GetUserId())
	if status != mongodb.ReadSucceeded {
		return dozy.StatusNotFound, []byte(""), ""
	}

	return dozy.StatusGetOk, returnJson, ""
}
開發者ID:hdiwan,項目名稱:RedRoute,代碼行數:19,代碼來源:users.go

示例13: PutUsersMyPlaces

func PutUsersMyPlaces(reqJson []byte, qs map[string][]string, uri []string, ac *dozy.AuthContext, rawDb interface{}) (uint, []byte, string) {
	db := rawDb.(PutUsersMyPlacesDb)
	userId, convErr := strconv.Atoi(uri[1])
	if convErr != nil {
		return dozy.StatusBadRequest, []byte(""), ""
	}

	if !ac.GetLoggedIn() || ac.GetUserId() != uint(userId) {
		return dozy.StatusIncorrectPermissions, []byte(""), ""
	}

	j := dozy.JsonObj{}
	unmarshalErr := json.Unmarshal(reqJson, &j)
	if unmarshalErr != nil {
		panic(unmarshalErr)
	}

	updateStatus := db.UpdateMyPlaces(ac.GetUserId(), j)
	if updateStatus != mongodb.WriteSucceeded {
		return dozy.StatusBadRequest, []byte(""), ""
	}

	return dozy.StatusPutOk, []byte(""), ""
}
開發者ID:hdiwan,項目名稱:RedRoute,代碼行數:24,代碼來源:users.go

示例14: GetUsersProfile

func GetUsersProfile(reqJson []byte, qs map[string][]string, uri []string, ac *dozy.AuthContext, rawDb interface{}) (uint, []byte, string) {
	db := rawDb.(GetUsersProfileDb)

	userId, convErr := strconv.Atoi(uri[1])
	if convErr != nil {
		return dozy.StatusBadRequest, []byte(""), ""
	}

	numPostsToFetch, convErr1 := strconv.Atoi(qs["numPostsToFetch"][0])
	if convErr1 != nil {
		return dozy.StatusBadRequest, []byte(""), ""
	}

	startingPostNum, convErr2 := strconv.Atoi(qs["startingPostNum"][0])
	if convErr2 != nil {
		return dozy.StatusBadRequest, []byte(""), ""
	}

	status, responseJson := db.GetProfile(uint(userId), uint(numPostsToFetch), uint(startingPostNum), db.AreFriends(ac.GetUserId(), uint(userId)))
	if status != mongodb.WriteSucceeded {
		return dozy.StatusNotFound, []byte(""), ""
	}

	return dozy.StatusGetOk, responseJson, ""
}
開發者ID:hdiwan,項目名稱:RedRoute,代碼行數:25,代碼來源:users.go


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