c# - 从 Asp.Net MVC 4 Web API 返回 View

标签 c# asp.net asp.net-mvc asp.net-mvc-4

由于我正在开发 Asp.Net MVC 4 Web API,我还需要返回特定条件下的 View 。我的流程如下:

  1. 第三方应用程序将调用我的 Web API 方法。 (例如用户身份验证)
  2. 如果有有效的凭据,我需要返回 HTTP 状态为 SUCCESS (200)
  3. 如果用户无效,我需要从同一 MVC 应用程序返回 VIEW(登录 View )以请求凭据。 ( View 中会有一个“注册”链接)

所以重点是,是否可以在不同条件下通过相同的条件返回 LOGIN View (html)WebResponse Status (200) WEB API 方法?

提前致谢。

最佳答案

你可以做两件事:

  1. 像 Jon Galloway 的教程一样使用 AuthorizeAttribute:Getting started with WebAPI
  2. 将您的响应数据封装在 HttpResponseMessage 中,并在需要时重定向用户。例如:

    var responseMessage = new HttpResponseMessage<Stock>(null, HttpStatusCode.RedirectMethod);
    responseMessage.Headers.Location = new Uri("http://www.mysite.com/login");
    
    return responseMessage;
    

关于c# - 从 Asp.Net MVC 4 Web API 返回 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10640889/

相关文章:

c# - ASP.NET Html.ListBoxFor 在页面加载时始终选择所有选项

asp.net - 在 VB2010 中将 Crystal Reports 与 Azure 结合使用,本地运行时出现空白屏幕

regex - .Net MVC 路由用于不确定数量的文件夹(嵌套类别结构)

c# - 继承 Controller 时无法让 Route 在 ASP.Net Web API 2 中工作

.net - asp.net mvc 和 css : Having menu tab stay highlighted on selection

c# - 使用 R.Net 版本 1.5.5 创建 REngine 实例

c# - 如何在不使用 HttpContext 静态类的情况下获取 ApiController 中的 HttpRequest 对象?

c# - 拥有一个带有 C++ 类的 DLL,即构造函数接受其他 C++ 类,如何使 C# 能够创建其实例?

c# - 将 ContextMenu 命令绑定(bind)到父 View 模型 RelayCommand

c# - 由于缺少 SSL 加密,连接到 SQL Azure 数据库失败