C# 使Web api 2使用mvc 5凭据
我有一个MVC5应用程序,我可以注册一个用户 现在,我想使用这些凭据访问Web Api 2。 我像这样添加了WebAPI2 这是我的apiC# 使Web api 2使用mvc 5凭据,c#,asp.net,asp.net-mvc,asp.net-web-api,asp.net-mvc-5,C#,Asp.net,Asp.net Mvc,Asp.net Web Api,Asp.net Mvc 5,我有一个MVC5应用程序,我可以注册一个用户 现在,我想使用这些凭据访问Web Api 2。 我像这样添加了WebAPI2 这是我的api public class MyApiController : ApiController { [Authorize] //[System.Web.Mvc.Authorize] public ResultContainer Get() { var result = new ResultContainer
public class MyApiController : ApiController
{
[Authorize]
//[System.Web.Mvc.Authorize]
public ResultContainer Get()
{
var result = new ResultContainer
{
IsOk = true,
DisplayMessage = false,
};
return result;
}
}
现在,我想用一个我在网站上注册的帐户使用.net客户端.NET4访问api
这是密码
var handler = new HttpClientHandler { Credentials = new NetworkCredential(Username, Password) };
using (var client = new HttpClient(handler) { BaseAddress = new Uri(BaseUri) })
{
try
{
var response = client.GetAsync("/api/MyApi").Result; // Blocking call!
if (response.IsSuccessStatusCode)
{
var result = response.Content.ReadAsStringAsync().Result;
}
}
}
问题是我总是收到一个带有要登录表单的html页面,而不是我想要的资源。
如果不设置
授权
属性。
我错过了什么
谢谢您是否尝试过使用Owin身份验证管道?这两种技术可以很容易地共享它们。我们可以看到您用于访问API的代码吗?@Simon您可以共享一个链接吗?谢谢,@Erik我用来访问API的代码是thread@Daniel一个好的开始是