从开发中的单独进程调用API,同时保持经过身份验证 - "非静态方法需要目标"

时间:2017-11-01 21:44:48

标签: asp.net-mvc angular visual-studio asp.net-web-api visual-studio-code

我将应用程序的前端移植到Angular(4)。当前的应用程序是沿着jquery的ASP.NET MVC API构建的,所有应用程序都在Visual Studio中的单个进程/端口上运行。

使用新的Angular方法,我想在一个单独的进程中运行VS Code中的前端。前端应该使用现有的Visual Studio API部件。通过在Web API上修改Allow-Headers,我成功地在示例应用上执行了此操作。

现在,在我的真实Web API中,API生成的结果取决于经过身份验证的用户。例如:

public JsonResult GetActivitiesForScheduler()
{
    using (var context = new ApplicationDbContext())
    {
        var activities = _aRepo.GetActivities(context, _user);
        return Json(activities.ToList(), JsonRequestBehavior.AllowGet);
    }
}

当Angular进程在调试时调用Visual Studio API时,_user为null(即使我已登录初始应用程序,并且两个浏览器窗口都打开),并且请求失败并且"非 - 静态方法需要一个目标"错误。

我是否可以通过某种方式将用户传递给API,而无需修改其代码?

0 个答案:

没有答案