2015-04-24 38 views
0

我正在閱讀關於本地登錄在asp.net web api中的以下鏈接。 http://www.asp.net/web-api/overview/security/individual-accounts-in-web-api 但是,當看看下面的代碼發送用戶的logindata到服務器來驗證用戶,我找不到哪個是asp.net web api中處理本地登錄的默認方法。 那麼,它究竟在哪裏?ASP.NET WebAPI - 處理本地登錄的方法在哪裏?

var loginData = { 
grant_type: 'password', 
username: self.loginEmail(), 
password: self.loginPassword() 
}; 

$.ajax({ 
type: 'POST', 
url: '/Token', 
data: loginData 
}).done(function (data) { 
self.user(data.userName); 
// Cache the access token in session storage. 
sessionStorage.setItem(tokenKey, data.access_token); 
}).fail(showError); 

回答

0

我有同樣的問題。我終於知道,原來打電話是/令牌的網址:

$.ajax({ 
     type: 'POST', 
     url: '/Token', //!! plain as day !!! 
     data: loginData 
    }).done(function (data) { 
     self.user(data.userName); 
     // Cache the access token in session storage. 
     sessionStorage.setItem(tokenKey, data.access_token); 
    }).fail(showError); 

這是建立與ApplicationOAuthProvider在Startup.Auth.cs

 OAuthOptions = new OAuthAuthorizationServerOptions 
     { 
      TokenEndpointPath = new PathString("/Token"), 
      Provider = new ApplicationOAuthProvider(PublicClientId), 
      AuthorizeEndpointPath = new PathString("/api/Account/ExternalLogin"), 
      AccessTokenExpireTimeSpan = TimeSpan.FromDays(14), 
      AllowInsecureHttp = true 
     }; 

This article相關聯幫了不少忙。