笔者的学习进度比较慢,直到两年以前写的网站都还是以服务端为主导的,即网站的所有视图都由服务器视图模板来渲染,笔者使用的是 DotNet MVC,开发套路就是在Controller里面写Action,在Views里写对应的Action.cshtml,使用ajax发起请求已经是比较前端的事情了.这种时候由于DotNet MVC框架继承的微软风格的懒人模式,甚至不需要去知道其路由是如何实现的,给人一种感觉是只要在浏览器里敲进去Controller名与Action名,就访问到视图了. 后来笔者开始使用n…
Web API的路由,是指明接口地址的方向,是照亮获取数据路上的灯塔,其重要性不言而喻. 本篇文章以vs2015为例,一步步说明路由的创建及使用,其中包括默认路由.自定义路由和特性路由. 一.默认路由 我们创建一个新的web api项目,其初始的默认路由是这样的: 不难看出,默认路由的名称(name)是DefaultApi.路由模板(routeTemplate)是api/{controller}{id},api是固定的,{controller}匹配控制器,{id}匹配行为的参数,由default…
引言 学习ASP.NET MVC 路由这一关是肯定必不可少的.这一节,我们就来简单介绍下MVC中的路由机制.简单的路由机制相信大家都已了解,这一节主要介绍路由中很少使用的部分. 使用静态URL片段 在一个路由中,并不是所有的URL片段都要求是动态的,也可以创建具有静态片段的模式.例如以下的路由: routes.MapRoute("StaticRoute", "X{controller}/{action}", new { controller = "Home…
自从Java问世以来,在服务端开发方面取得了巨大的发展.但是在桌面/Web开发方面,一直没有得到大的发展.从最初的AWT,到Swing,再到JavaFX,Java从来没有在桌面/Web解决方案中取得重要席位,更别提占居主导地位了. AWT AWT(Abstract Window ToolKit,抽象窗口工具包)是SUN在1996年推出的UI框架.由于需要跨平台,所以AWT只能支持主流平台共有的界面组件和特性(交集),例如标签.按钮等,这就导致了AWT在组件丰富程度以及功能性等方面必然有欠缺.AW…
1.会话控制 > Http协议 Http协议两个缺陷: 1.HTTP协议是纯文本的 2.HTTP协议是无状态的 服务器不能简单的通过HTTP协议来区分多次请求是否发自同一个用户 虽然通过HTTP协议不能区分不同请求是否来同一用户,但是我们实际生活却有这样的需求. [1] Cookie > 看电影 - 去电影院看电影时,检票人员是认票不认人. - 电影院的运作流程 1.印刷电影票 2.将票发给看电影 3.看电影的拿着票来看电影 4.检票 > 简介 - 我们想可以通过服务器向浏览器发送一个类…
前言 当有多个共享资源.协同操作的时候,往往需要根据动态亦或是复杂的条件以控制和调用程序逻辑. 还是那句话,懂的人自然懂,不懂的人也搜不到这个随笔. 设计 PendingPromise<T>: type Promise<T> & { resolve:(res?:T)=>void, reject:(e: Error):void } pendingResolve<T>: ()=>PendingPromise<T> 实现 export type…
1.什么是路由? 在Web开发过程中,经常会遇到『路由』的概念.那么,到底什么是路由?简单来说,路由就是URL到函数的映射. 路由的概念最开始是由后端提出来的,在以前用模板引擎开发页面的时候,是使用路由返回不同的页面, 大致流程可以看成这样: (1)浏览器发出请求 (2)服务器端监听到80端口或者443有请求过来,并解析url路径 (3)根据服务器的路由配置,返回相应信息(可以是html文件,json数据,也可以是图片) (4)浏览器根据数据包的content-type来决定如何解析数据 简单来…
自然是有很大意义的.下面我可能说的比较多--方便题主能够更全面的了解为什么说是有有意义的.另外,本文是以Java的角度谈前后端分离.放心,大家一定会有种是我了,没错,的感觉. 一.先来明晰下概念 前后端分离是通过Ngnix+Tomcat的方式(也可以中间加一个Node.js)有效的进行解耦,并且前后端分离会为以后的大型分布式架构.弹性计算架构.微服务架构.多端化服务(多种客户端,例如:浏览器,车载终端,安卓,iOS等等)打下坚实的基础.这个步骤是系统架构从猿进化成人的必经之路. 它的核心思想是前…
重审业务逻辑 用过MVC的童鞋都知道业务逻辑(Bussiness Logic),但是大多对这概念又是模棱两可,业务逻辑从来都是这样难以理解,谈论前后端分离之前这个概念非常有必要探讨一下! 在简单的CRUD的系统中,基本上都是对数据进行增删改查操作,并没有多少业务逻辑可言:但像银行系统对金融数据的操作就显得不那么简单了,以转账为例:A给B转帐转100元,简易代码如下: if(A.balance - 100 >= 0){ A.balance -100; B.balance +100; }else{…
路由 在网络中,路由相当于就是一张地图,让路由器知道这个对应的IP数据包应该往哪端口.网段走:而这个"地图"我们称之为路由表,不同的目的IP路由表的下一个跳也不同,其生成方式有又有多种: 静态路由:网络管理员手动定义的路由表条路 默认路由:特殊的静态路由,路由表中没有的可以统一定义往这一路走. 动态路由:通过路由协议来自动生成路由表条目,其中动态路由又有很多种,通过自治系统(AS)来划分 IGP(内部网关协议)RIP.OSPF.IS-IS.EIGRP EGP(外部网关协议)BGP 协议…