public ActionResult Authorize(Models.Authorize2Model model) { var user = unitOfWork.UserRepositiry.dbSet.SingleOrDefault(u => u.Email == model.Email && u.Password == model.Password); if (user == null) { ModelState.AddModelError("", "密码不正确"); } else //密码正确,把临时token换成正式的token,并存入缓存,与当前用户相关 { string token = "test_token_ok"; string tokenSecret = "test_token_secret_ok"; OauthTokenPair tokenpair = new OauthTokenPair(); tokenpair.oauth_token = token; tokenpair.oauth_token_secret = tokenSecret; tokenpair.UserId = user.UserId; TempToken2OfficialMap map = new TempToken2OfficialMap { oauth_temp_token = model.TempToken, oauth_token = token }; unitOfWork.TokenReposity.Insert(tokenpair); unitOfWork.TokenReposity.InsertMap(map); return(RedirectToAction("AuthorizeCompleted", new{ verifyCode = 123 })); } //验证数据,并跳转到AuthorizeCompleted return(View(model)); }
/// <summary> /// Accesses the token. /// </summary> /// <returns></returns> public JsonResult AccessToken(Models.AccessTokenModel model) { TempToken2OfficialMap map = unitOfWork.TokenReposity.AccessToken(model.oauth_token); if (map != null) { OauthTokenPair pair = unitOfWork.TokenReposity.GetTokenPair(map.oauth_token); return(Json(pair, JsonRequestBehavior.AllowGet)); } return(Json(new{ err = "err" }, JsonRequestBehavior.AllowGet)); }
public bool InsertMap(TempToken2OfficialMap map) { this.context.Remove(map.oauth_temp_token); return(this.context.Store(StoreMode.Add, "map_" + map.oauth_temp_token, map)); }