开发者社区> 问答> 正文

在凡客看到CSS和JS加载均使用.ashx , .ashx 是什么技术?

<link href="http://cssy.vanclimg.com/css.ashx?href=[/public/autocomplete.css],[/index/global.css,header-top.css,header-logo.css,header-nav.css,footer.css,indexcontentv10.css]&v=20130712115604&compress" type="text/css" rel="stylesheet" charset="utf-8" />

若单独运行css.ashx,则提示以下信息:

css.ashx、js.ashx: 用法:

css.ashx?href=A,B,C

js.ashx?href=A,B,C

同级目录中的不同文件,以方括号括起来

css.ashx?href=[A/A1,A2]意思为连接~/A/A1.css与~/A/A2.css

js.ashx?href=[B/B1,B2]意思为连接~/B/B1.js与~/B/B2.js

混合用法

css.ashx?href=A,[B/B1,B2],C/C1意思为连接~/A.css与~/B/B1.css与~/B/B2.css与~/C/C1.css

未找到文件时的处理:

如果未找到A.CSS,在最终输出结果中会出现/CSS Combiner 未找到文件~/A.css/

如果未找到A.JS,在最终输出结果中会出现//JS Combiner 未找到文件~/A.js

请问是什么原理? 还是 .net 自身的一个动态加载技术?

展开
收起
杨冬芳 2016-06-14 15:28:38 2555 0
1 条回答
写回答
取消 提交回答
  • IT从业

    就是个handler页面,看他这么写无非就是服务器组建处理了一下资源文件。

    href=[/public/autocomplete.css],[/index/global.css,header-top.css,header-logo.css,header-nav.css,footer.css,indexcontentv10.css]

    把多个css一起在后台读出来然后用一次http请求返回到前台。

    &v=20130712115604

    这个参数应该是为了防止浏览器缓存的问题,特意设置的参数

    &compress

    看这个参数猜测后台应该是把所有的css读取、拼接然后再压缩返回到前台。

    做这些工作可以优化资源文件的网络传输: 1.减少http请求次数 2.减小css文件体积

    2019-07-17 19:37:52
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
JavaScript面向对象的程序设计 立即下载
JavaScript函数 立即下载
Delivering Javascript to World 立即下载