首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >仅向使用ASP.NET MVC进行身份验证的用户提供静态单页应用程序(static html)

仅向使用ASP.NET MVC进行身份验证的用户提供静态单页应用程序(static html)
EN

Stack Overflow用户
提问于 2012-09-08 13:44:12
回答 2查看 914关注 0票数 3

我正在制作一个ASP.NET的MVC网站,需要服务的单页面应用程序数量。

一个单页面应用程序是静态的html,css和javascript文件,一个包含index.html文件的文件夹,以及一些css,图片和javascript文件夹。

我可以从IIS服务器中的虚拟目录提供单页应用程序,但是我希望在IIS解决方案中只为经过身份验证的用户提供服务,因此我现在正在尝试从控制器方法提供index.html文件。

当我通过加载和提供index.html文件来执行此操作时,我无法弄清楚如何提供index.html文件使用的所有css和javascript文件,因为index.html使用"css/style.css“和”js/omejavascript.js“等相对路径引用它们。

我使用相关的部分来使开发和调试单页面应用程序独立于ASP.NET MVC解决方案变得容易。

所以我的问题基本上是,我如何才能在ASP.NET MVC站点中只向经过身份验证的用户提供带有css和js文件相对urls的静态HTML文件?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-09-08 13:54:21

如果我理解的话:你有一些静态的HTML文件,你不能/不想改变它们,有相对的URL链接。在这种情况下,只需构建MVC路由,以使相对路径有效。例如,假设相对路径如下:

代码语言:javascript
复制
js/script.js
css/style.css

当您将其发送回浏览器时,它将解析相对于当前路径的那些路径。因此,如果您从路由(比方说)提供HTML文件:

  • http://domain.com/myapp/home

然后浏览器将请求发送到:

  • http://domain.com/myapp/home/js/script.js
  • http://domain.com/myapp/home/css/style.css

因此,相应地调整路由,并确保所有备用路由都重定向到主路由,例如/home/index应该重定向到/home

票数 1
EN

Stack Overflow用户

发布于 2012-09-08 13:47:04

放置一个

代码语言:javascript
复制
[Authorize]

用于服务"index.html“的控制器或操作的属性。

默认情况下,脚本和css是公共的,因此不需要授权。

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12328348

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档