AuthenticationConfiguration に問題があります。AuthenticationConfiguration を WebApiConfig に入れると、$http リクエストが機能しなくなります。リソースの読み込みに失敗しました: サーバーが 403 のステータスで応答しました (HTTPS が必要です) というエラーが表示されます。
角リクエスト
$http.get(defaultUrl + '/' + 'IsLoggedIn');
public class AuthenticationServiceController : ApiController
{
[System.Web.Http.HttpGet]
public HttpResponseMessage IsLoggedIn()
{
var loged = System.Web.HttpContext.Current.User.Identity.IsAuthenticated;
return Request.CreateResponse<bool>(System.Net.HttpStatusCode.OK, loged);
}
}
WebApiConfig.cs
public static void Register(HttpConfiguration config)
{
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
var authConfig = new AuthenticationConfiguration
{
InheritHostClientIdentity = true,
ClaimsAuthenticationManager = FederatedAuthentication.FederationConfiguration.IdentityConfiguration.ClaimsAuthenticationManager
};
// setup authentication against membership
authConfig.AddBasicAuthentication((userName, password) => Membership.ValidateUser(userName, password));
config.MessageHandlers.Add(new AuthenticationHandler(authConfig));
}