先探讨方案,后续再实现。

gulp打包前端教程配置:http://www.cnblogs.com/EasonJim/p/6209951.html

可能存在以下场景:

1、整个服务端采用接口的形式暴露给客户端,客户端全权负责前端效果及绑定数据。

2、服务端采用比如webfrom/mvc,java的模板机制绑定前端,前端最后会把做好的静态效果交给服务端进行绑定,有修改时,前端处理后又把新的静态丢给服务端做更新。

针对以上场景的具体实现方案:

1、这种方式无疑是最好管理的,各部门都有很明确的分工,每个开发都有明确工作,所以直接由前端构建好之后,自动带参数的资源文件,部署还是又前端处理;所以直接使用http://www.cnblogs.com/EasonJim/p/6209951.html

1.1、这种方式的变现主要出自中大厂,每次发布后,观察其页面表现形式,可以发现资源文件都是带版本号的。

2、这种方式很纠结,比如前端打包号带版本号的资源文件和页面后,交付给服务端进行模板绑定,会发觉每次都必须全部页面都更新,工作量很大,所以采用第一种方式打包行不通。

2.1、改进方式:还是由客户端打包,不过是打包出不带参数的资源和静态;再交付给服务端,进行增量修改,这时服务端只需要替换资源和静态,最后提交到svn进行构建;其中构建的同时,发布到测试站点时,会再一次用gulp构建前台,不过这次构建的前台文件不再是html,而是aspx/cshtml/jsp这样的,最终的产物是,全部资源都带上参数;

2.2、从上一步会发现,把前端打包的过程中的一步:带参数过程,拿到了服务端进行。

2.3、这种方式主要出自小公司,因为小公司对于前端要求不高,只要做效果即可,最终由服务端进行绑定数据,通常都是服务端身兼多职去处理。

总结:

以上为打包方案的总结,还未正式实现,后续再实践。

为什么要加参数,很简单,对应微信浏览器为主,微信浏览器的缓存机制没有很好的体验,经常因为资源缓存的文件而出现bug。而微信上对于一些带参数的资源也不一定更新,比如:test.js?v=1234356,这样的形式有时不刷新,所以必须改用这样的方式:test-123123.js的形式。

用gulp打包带参数资源做法与asp.net/java项目结合的自动构建方案探讨的更多相关文章

  1. java项目打包成可运行的jar,main方法带参数

    转载 原文地址:http://www.cnblogs.com/neillee/p/6063808.html#commentform 将 java 项目打包成可运行的 jar 包(main 函数带参数) ...

  2. 将 java 项目打包成可运行的 jar 包(main 函数带参数),并上传到 linux 服务器上运行

    一.概述 java项目有两种架构,一种是 B/S 架构的,一种是 C/S 架构的. 对于 B/S 架构来说,我们常见的 java ee 即是 B/S 架构,通常,开发人员会在本地进行开发,然后将项目打 ...

  3. 使用webpack打包ThinkPHP的资源文件

    使用webpack打包ThinkPHP的资源文件 利用自己的空余时间一直在维护http://www.wx2share.com这个小网站,全是一个人在弄,由于只租得起虚拟空间,所以后台采用了简单方便的T ...

  4. 使用gulp打包普通项目

    前言: 在使用gulp打包工具之前,我做的H5项目在浏览器中的缓存是很严重的,若改了一点css,加了一句js代码,不手动清除浏览器缓存是看不到效果的.老总也在项目演示当中遇到这些问题,一查找原因却是缓 ...

  5. C#的泛型的类型参数可以有带参数的构造函数的约束方式吗?

    Review后看到标题让我十分羞愧自己语文功底太差,估计...请见谅......我还特地把这句写回开头了...... 问题 前天遇到的一个问题,所以在MSDN发了个问,刚也丰富了下问题,关于泛型的. ...

  6. C#微信公众号接口开发,灵活利用网页授权、带参数二维码、模板消息,提升用户体验之完成用户绑定个人微信及验证码获取

    一.前言 当下微信公众号几乎已经是每个公司必备的,但是大部分微信公众账号用户体验都欠佳,特别是涉及到用户绑定等,需要用户进行复杂的操作才可以和网站绑定,或者很多公司直接不绑定,而是每次都让用户填写账号 ...

  7. 转】MyEclipse使用总结——使用MyEclipse打包带源码的jar包

    原博文出自于: http://www.cnblogs.com/xdp-gacl/p/4136303.html 感谢! 平时开发中,我们喜欢将一些类打包成jar包,然后在别的项目中继续使用,不过由于看不 ...

  8. MyEclipse使用总结——使用MyEclipse打包带源码的jar包

    平时开发中,我们喜欢将一些类打包成jar包,然后在别的项目中继续使用,不过由于看不到jar包里面的类的源码了,所以也就无法调试,要想调试,那么就只能通过关联源代码的形式,这样或多或少也有一些不方便,今 ...

  9. Sql Server 带参数的存储过程执行方法

    Sql Server 带参数的存储过程执行方法 Visual C# 动态操作 SQL Server 数据库实例教程(4):带参数的存储过程执行方法 上一篇文章介绍了带参数的SQL语句执行方法和不带参数 ...

随机推荐

  1. CSS3-04 样式 3

    前言 关于 HTML/CSS 的博客也写了几篇了.该系列博客主要介绍 HTML 和 CSS 的基础,尚未过多的涉及 HTML5 和 CSS3 (即 HTML/CSS 进阶)的内容.这些博客是按照一定的 ...

  2. sp_executesql得到执行sql语句的返回值

    执行 sql语句,得到 变量的值 ' declare @Partition int; ); ); SET @SQLString = N'SELECT @RangeKeyOUT = $PARTITION ...

  3. mysqldump:Couldn't execute 'show create table `tablename`': Table tablename' doesn't exist (1146)

    遇到了一个错误mysqldump: Couldn't execute 'show create table `CONCURRENCY_ERRORS`': Table INVOICE_OLD.CONCU ...

  4. [AlwaysOn Availability Groups]排查:AG配置

    排查AG配置 本文主要用来帮助排查在AG配置时出现的问题,包括,AG功能被禁用,账号配置不正确,数据库镜像endpoint不存在,endpoint不能访问. Section Description A ...

  5. MongoDB学习笔记——分片(Sharding)

    分片(Sharding) 分片就是将数据进行拆分,并将其分别存储在不同的服务器上 MongoDB支持自动分片能够自动处理数据在分片上的分布 MongoDB分片有三种角色 配置服务器:一个单独的mong ...

  6. python基础(八)面向对象的基本概念

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 谢谢逆水寒龙,topmad和Liqing纠错 Python使用类(class)和对 ...

  7. 服务器文件上传下载(XShell+Xftp)

    1.下载XShell安装包+Xftp安装包.百度网盘(XShell):https://pan.baidu.com/s/1eR4PFpS 百度网盘(Xftp):https://pan.baidu.com ...

  8. WPF 自定义柱状图 BarChart

    WPF 自定义柱状图 当前的Telerik控件.DevExpress控件在图表控件方面做得不错,但是有时项目中需要特定的样式,不是只通过修改图表的模板和样式就能实现的. 或者说,通过修改当前的第三方控 ...

  9. tomcat配置SSL双向认证

    一.SSL简单介绍 SSL(Secure Sockets Layer 安全套接层)就是一种协议(规范),用于保障客户端和服务器端通信的安全,以免通信时传输的信息被窃取或者修改. 怎样保障数据传输安全? ...

  10. Android(Linux)线路规程的使用

        一般来说,车载导航主机都需要外接若干个UART的外设,如支持HFP的蓝牙模块.与原车通信的CAN解码盒模块.u-blox的GPS模块和DVD机芯等.早年使用Telechips TCC8902+ ...