用gulp打包带参数资源做法与asp.net/java项目结合的自动构建方案探讨
先探讨方案,后续再实现。
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项目结合的自动构建方案探讨的更多相关文章
- java项目打包成可运行的jar,main方法带参数
转载 原文地址:http://www.cnblogs.com/neillee/p/6063808.html#commentform 将 java 项目打包成可运行的 jar 包(main 函数带参数) ...
- 将 java 项目打包成可运行的 jar 包(main 函数带参数),并上传到 linux 服务器上运行
一.概述 java项目有两种架构,一种是 B/S 架构的,一种是 C/S 架构的. 对于 B/S 架构来说,我们常见的 java ee 即是 B/S 架构,通常,开发人员会在本地进行开发,然后将项目打 ...
- 使用webpack打包ThinkPHP的资源文件
使用webpack打包ThinkPHP的资源文件 利用自己的空余时间一直在维护http://www.wx2share.com这个小网站,全是一个人在弄,由于只租得起虚拟空间,所以后台采用了简单方便的T ...
- 使用gulp打包普通项目
前言: 在使用gulp打包工具之前,我做的H5项目在浏览器中的缓存是很严重的,若改了一点css,加了一句js代码,不手动清除浏览器缓存是看不到效果的.老总也在项目演示当中遇到这些问题,一查找原因却是缓 ...
- C#的泛型的类型参数可以有带参数的构造函数的约束方式吗?
Review后看到标题让我十分羞愧自己语文功底太差,估计...请见谅......我还特地把这句写回开头了...... 问题 前天遇到的一个问题,所以在MSDN发了个问,刚也丰富了下问题,关于泛型的. ...
- C#微信公众号接口开发,灵活利用网页授权、带参数二维码、模板消息,提升用户体验之完成用户绑定个人微信及验证码获取
一.前言 当下微信公众号几乎已经是每个公司必备的,但是大部分微信公众账号用户体验都欠佳,特别是涉及到用户绑定等,需要用户进行复杂的操作才可以和网站绑定,或者很多公司直接不绑定,而是每次都让用户填写账号 ...
- 转】MyEclipse使用总结——使用MyEclipse打包带源码的jar包
原博文出自于: http://www.cnblogs.com/xdp-gacl/p/4136303.html 感谢! 平时开发中,我们喜欢将一些类打包成jar包,然后在别的项目中继续使用,不过由于看不 ...
- MyEclipse使用总结——使用MyEclipse打包带源码的jar包
平时开发中,我们喜欢将一些类打包成jar包,然后在别的项目中继续使用,不过由于看不到jar包里面的类的源码了,所以也就无法调试,要想调试,那么就只能通过关联源代码的形式,这样或多或少也有一些不方便,今 ...
- Sql Server 带参数的存储过程执行方法
Sql Server 带参数的存储过程执行方法 Visual C# 动态操作 SQL Server 数据库实例教程(4):带参数的存储过程执行方法 上一篇文章介绍了带参数的SQL语句执行方法和不带参数 ...
随机推荐
- 内嵌iframe
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Index.aspx.cs& ...
- ORA-27125: unable to create shared memory segment
平台环境 : Oracle Linux Server release 5.7 x86_64 数据库版本 : Oracle Database 10g Enterprise Edition Rel ...
- Android 上实现像微信一样的用Fragment来实现的Tab切页效果 提供源码下载
网有不少的例子,但是要么是像微信一样可是没有使用Fragment实现,要么是只实现了一个很简单的切换,没有下面的菜单页.这个例子有实现了,我觉得暂时够我用了##实现类:+ MainTabFragmen ...
- Oracle用户密码过期和用户被锁解决方法
[原因/触发因素] 确定是由于oracle11g中默认在default概要文件中设置了"PASSWORD_LIFE_TIME=180天"所导致. [影响和风险] 影响 密码过 ...
- 迅为-iMX6开发板 飞思卡尔iMX6Q开发板 工业级开发板
了解详情请点击迅为官网:http://topeetboard.com 迅为-i.MX6开发板是采用Freescale Cortex-A9 四核i.MX6Q处理器,主频1GHz,2G DDR3内存,16 ...
- 轻松搞懂WebService工作原理
用更简单的方式给大家谈谈WebService,让你更快更容易理解,希望对初学者有所帮助. WebService是基于网络的.分布式的模块化组件. 我们直接来看WebService的一个简易工作流程: ...
- HDU 1524 A Chess Game【SG函数】
题意:一个N个点的拓扑图,有M个棋子,两个人轮流操作,每次操作可以把一个点的棋子移动到它的一个后继点上(每个点可以放多个棋子),直到不能操作,问先手是否赢. 思路:DFS求每个点的SG值,没有后继的点 ...
- BZOJ 2120 数颜色&2453 维护队列 [带修改的莫队算法]【学习笔记】
2120: 数颜色 Time Limit: 6 Sec Memory Limit: 259 MBSubmit: 3665 Solved: 1422[Submit][Status][Discuss] ...
- COGS 265线段覆盖[线段树]
265. 线段覆盖 ★★☆ 输入文件:xdfg.in 输出文件:xdfg.out 简单对比时间限制:2 s 内存限制:20 MB [问题描述] 有一根长度为 L 的白色条状物.有两种操 ...
- HOLOLENS程序发布,这个界面调用的图片
SplashScreen.scale-200.png 1240 x 600