AngularJS 与 MVC 6

2023-11-30

这是一MVC 6/WebApi应用。我正在尝试在后端使用 WebApi,在前端使用 AngularJS。

我有两个静态文件:index.html 和 login.html
(最终将会有更多的静态文件。)

我的 Angular 应用程序包含在index.html 中,而视图(例如/login)是从静态文件(即login.html)加载的。

如果我转到我的根 URL,index.html 就可以正常加载。但是,如果我转到 /login,我会收到 404 页面未找到。

现在,可以说,我DO NOT想让我的应用程序陷入一堆控制器和视图的困境,因为没有必要简单地提供静态文件。这太过分了。

我设置了路由来服务 API 调用(即 ~/api/whatever)。如何让 MVC 6 忽略所有其他路由?

仅供参考,看来还地图页面路线在 MVC 6 中已弃用?

EDIT:
为了使其真正正常工作,我所做的一件事是添加我自己的中间件来拦截请求。下面的代码添加在我的所有默认中间件之后配置 method:

app.Use(next => async context =>
{
    if (context.Request.Path.Value.StartsWith("/api"))
        await next.Invoke(context);
    else
        await context.Response.WriteAsync(System.IO.File.ReadAllText("index.html"));
});

这看起来有点多,而且只是一个 hack。它所做的只是允许任何以“/api”开头的请求通过(然后由 MVC 中间件拾取),但任何其他调用都将使用索引.html。因此,如果我请求的 URL 是“/login”,则索引.html文件已送达​​,thenAngular 查看路线并加载登录.html文件进入视图。

还有其他建议吗?


好的,既然 MVC 6/ASP.NET 5 框架中不存在某些东西,我创建了自己的中间件,它提供了更多的灵活性。它已添加到 GitHub 并可通过 NuGet 获取。

项目页面为:https://github.com/a11smiles/AngularMiddleware

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AngularJS 与 MVC 6 的相关文章

  • Angular UI 路由器嵌套视图问题

    我在理解 Angular UI Router 嵌套视图的工作原理时遇到了一些问题 我的 stateProvider 看起来像这样 stateProvider state login url login views main template
  • 为什么这个 Web api 控制器不并发?

    我有一个 Web API 控制器 里面有以下方法 public string Tester Thread Sleep 2000 return OK 当我调用它 10 次 使用 Fiddler 时 我预计所有 10 次调用都会在大约 2 秒后
  • 如何在类文件中使用 Url.Action() ?

    如何在 MVC 项目的类文件中使用 Url Action Like namespace 3harf public class myFunction public static void CheckUserAdminPanelPermissi
  • 使用 ng-blur 和 ui-sref 无法按预期工作

    我有一个带有自定义下拉结果面板的搜索字段 在其中输入单词或聚焦时会显示该面板 所以我的 html 看起来像这样 div class input group div
  • 如何分配Profile值?

    我不知道我缺少什么 但我在 Web config 文件中添加了 Profile 属性 但无法访问 Profile Item在代码中或创建一个新的配置文件 我今天也遇到了同样的问题 学到了很多东西 Visual Studio 中有两种项目 网
  • Angularjs 循环遍历 $http.post

    当我循环遍历 Angularjs 的 http post 服务时 for var i 0 i lt scope tagStyles length i scope profilTag tag scope tagStyles i id tag
  • 通过外部控制进行 AngularJS 智能表过滤

    我试图找出合并 st table st safe src 的正确方法 并通过表本身之外的控件过滤数据 用户可以添加 编辑和删除数据 这就是我使用安全源的原因 任何例子或反馈都会很棒 查看此示例 其中包含从智能表中添加 编辑 删除行的选项 h
  • mvc 4下拉默认值选择

    我想在下拉列表中选择默认值 其中policyId 7 但它没有选择该值 我做错了什么 控制器 var pm new ManagerClass IEnumerable
  • AngularJS - 在等待数据/数据计算时加载图标

    我有一个简单的 Angular http get app factory countriesService function http return getCountryData function done http get resourc
  • 在 ASP.NET MVC 中使用 MySQL 的 AccountController

    在 Visual Studio 中创建默认的 ASP NET MVC 项目会设置一个可以在其中注册用户的基本项目 我将如何继续更改它以使用 MySQL 服务器而不是 SQLServer 现在可以使用了 安装最新的 Connector NET
  • 如何检查 MVC cshtml 页面中的调试模式

    如何检查 MVC cshtml 页面中的调试模式 此代码在 cshtml 页面中不起作用 bool isRelease false if DEBUG isRelease false else isRelease true endif if
  • MVC3 中定义路由的文件

    我有这个文件
  • AngularJS 和 PouchDB 服务的单元测试

    我正在尝试对我的个人 Angular 工厂进行单元测试 但很难尝试正确模拟和注入 PouchDB 对象 我的工厂代码目前如下 factory Track function var db new PouchDB tracks var reso
  • ASP.NET MVC 的示例 MS 应用程序?

    我正在开始我的第一个 MVC 项目 并希望有一个良好的开端 我了解如何创建快速但肮脏的 MVC 应用程序的基础知识 但是 我想获得使用开发 ASP NET MVC 应用程序最佳实践的资源 文档或示例快速入门应用程序 任何帮助表示赞赏 书呆子
  • 使用ViewData或不使用ViewData

    我一直在阅读 Professional ASP NET MVC 1 0 一书 并阅读其他有关从控制器到视图中使用 ViewModel 而不是 ViewData 的资料 但后来我看到很多 ViewData 的例子都被用在一些困难的场景中 除了
  • 根据用户是否经过身份验证隐藏或显示链接 - AngularJs

    我目前正在研究一个AngularJS应用程序中 我遇到了以下障碍 我们有一个login当用户提交页面时 我们调用 Web api 并对用户进行身份验证 我们目前正在使用声明身份验证来设置 cookie 等 这些内容按预期工作 但是我遇到的问
  • 将视频上传/保存到数据库或文件系统

    我以前从未尝试过保存视频 所以我对此了解不多 我知道如果视频很小 我可以转换为字节数组并保存到数据库 但是为了提高效率 我想了解如何将任何上传的视频保存到我的服务器文件中 然后只保存该文件的文件路径我的数据库表中的视频 我完全不知道如何开始
  • 如何为 ng-repeat orderBy 创建回调?

    寻找一种方法让 AngularJS 的 ng repeat orderBy 过滤器在完成渲染后执行回调 Markup div table thead tr th Name th th Age th tr thead tbody tr tr
  • ASP.NET MVC2:“System.MissingMethodException:没有为此对象定义无参数构造函数。”

    我目前正在尝试修改默认 MVC 项目的注册组件 以适应我的项目 为此 我修改了 RegisterModel Register aspx 和 AccountController 我可以很好地查看寄存器视图 但是当我提交时 我在标题中收到错误
  • 调用泛型类的方法

    这是上下文 我尝试编写一个映射器来动态地将域模型对象转换为 ViewModel 对象 我遇到的问题是 当我尝试通过反射调用泛型类的方法时 出现此错误 System InvalidOperationException 无法对 Contains

随机推荐

  • 如何使用dom解析器java解析xml中的同名标签?

    如何使用dom解析器java解析xml中的相同名称标签 我有以下 xml 文件 我想使用 java 中的 dom 解析器来解析该文件
  • scanf("%c") 自动读取 10

    void main int cnt 1 char i while cnt lt 4 printf nenter the character scanf c i if i gt 64 i lt 91 printf ncharacter is
  • 用于标记代码的 Eclipse 插件

    有没有Eclipse插件可以标记代码 就像用荧光笔一样 有人知道这是否可能吗 您可以用书签标记要突出显示的行 然后设置背景颜色以突出显示书签 你必须进去 preferences gt General gt Editors gt Text E
  • TypeORM 查找 where 条件 AND OR 链接

    我正在尝试使用存储库查找来编写查询 但似乎没有找到适合我的查询的解决方案 我知道这可以通过查询生成器或 Raw 条件实现 但如果可能的话 我想使用存储库查找 我想要达到的条件是字段1 字符串 AND 字段2为空OR字段2 gt 日期 目前唯
  • 合并两个相同类型的案例类,除了某些字段

    如果您有这样的案例类 case class Foo x String y String z String 你有两个实例 例如 Foo x1 y1 z1 Foo x2 y2 z2 是否可以将实例 1 合并到实例 2 中 除了字段 z 之外 结
  • 在 Android 中使用 cURL

    我想在我的 android 应用程序中以本机代码使用 cURL 库 使用最新的 NDK r5b 经过在线研究后 似乎在 android 中使用 cURL 的唯一方法是构建包含curl 的整个 android 源代码树 并且以某种方式生成 c
  • iDevice for Dummies:一台设备可以分配多个配置(个人/企业)吗? [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 是否可以为一个 iDevice 分配多个规定 老实说
  • 触发器从另一个表更新总和 MySQL

    我有一个数据库 用于跟踪我所在联赛的统计数据和平均值 我有一个结果表和一个排名表 我将结果中的 分数 添加到排名中的总体 分数 中 我目前有一个查询 它成功地将结果中的分数添加到积分表中 但是 当我添加新结果时 排名不会更新 这是我的查询
  • C / C++ / C#:如何执行“mount -a”

    问题 在 C C C 中 我需要 C 但 C 和 C 也可以 如何在 Linux 上执行 mount a 我的意思是 以编程方式 without开始一个像这样的过程 system mount a Edit 注意 a 我的问题实际上不是关于如
  • Express.JS:将 cookie 附加到静态提供的内容

    我使用 Express JS 来提供静态内容 express use express static When index html服务完成后 我想在响应旁边发送一个 cookie 指示用户是否已登录 通常应该使用res cookie 但我不
  • 如何将厨师食谱中的一种资源的价值传递到另一种资源?

    我正在尝试更改一个资源中的属性 并希望在另一资源中使用更新后的值 但更新后的值未反映在另一资源中 请帮我 Code node oracle asm disks each key do disk Chef Log info I am in c
  • 如何从命令行将参数传递给 Makefile?

    如何从命令行将参数传递给 Makefile 我明白我能做到 make action VAR value value with Makefile VAR default action echo VAR 我如何获得以下行为 make actio
  • 带 SVG 终端的 Gnuplot 4.7 超链接和超文本

    我正在 Gnuplot 4 7 中使用 SVG 终端 并尝试在浏览器上同时使用超文本和超链接 分别通过鼠标悬停和鼠标单击绘制的数据点来激活 鼠标悬停的工作原理要感谢 stackoverflow 对我上一个问题的帮助 我的数据输入文件如下所示
  • JComponent 和 ComponentUI 委托之间的绑定事件

    我已经开始尝试创建普通的 MVC Swing 组件 我对M和C没有任何问题 但是V向我抛出了一个我通常无法解决的问题 问题是 Controller 是组件的主类 例如 MyComponent 并且它扩展了 JComponent View 是
  • 使用Nutch爬取指定URL列表

    我有一百万个 URL 列表需要获取 我使用这个列表作为坚果种子并使用基本的crawl命令 Nutch 去取它们 但是 我发现 Nutch 会自动获取不在列表中的 URL 我确实将爬网参数设置为 深度1 topN 1000000 但它不起作用
  • 创建 Java 程序来搜索文件中的特定单词

    我刚刚学习该语言 想知道更有经验的 Java 程序员在以下情况下会做什么 我想创建一个java程序 它将搜索指定文件中特定单词的所有实例 你会如何处理这个问题 Java API 是否附带一个提供文件扫描功能的类 或者我是否必须编写自己的类来
  • 注册以支持 iOS 应用程序的图像文件

    您好 我想注册以支持我的应用程序中的图像文件 因此 当用户点击 iPhone 照片应用程序中的操作按钮时 我的应用程序图标将显示在 打开方式 菜单中 我的 info plist 中有以下内容
  • 在 LINQ 中选择计数

    我有一个包含列的 SQL Server 表ResolvedDate and ResolvedBy 现在我想选择这两列并计算它们的结果 我想我会这样实现 dataContext Activities Where a gt a IsResolv
  • 比较 Haskell 与 C# 的类型系统,寻找类似物

    我对 Haskell 编程还很陌生 我正在尝试处理它的类 数据 实例和新类型 这是我的理解 data NewData Constr1 Int Int Constr2 String Float 与 Java 或 C 大致相同 class Ne
  • AngularJS 与 MVC 6

    这是一MVC 6 WebApi应用 我正在尝试在后端使用 WebApi 在前端使用 AngularJS 我有两个静态文件 index html 和 login html 最终将会有更多的静态文件 我的 Angular 应用程序包含在inde