05 2017 档案
摘要:1. 由于JavaScript自身的特点,以及它在传递值和引用时的不同处理方式,通常认为,在视图中通过对象的属性而非对象本身来进行引用绑定,是Angular中的最佳实践。 准确的说,JS中的基本类型按值传递,对象类型按共享传递的(call by sharing,也叫按对象传递、按对象共享传递)。 最
阅读全文
摘要:模板引擎是为了使用户界面与业务数据(内容)分离而产生的,它可以生成特定格式的文档,用于网站的模板引擎就会生成一个标准的HTML文档。 模板引擎是把页面的静态部分和动态部分糅合在一起实现技术。 Jade是模板引擎中的一种,而Xitrum中默认使用Scalate。Scalate是一个基于Scala的模板
阅读全文
摘要:1. HTTP基本认证(Basic Authentication) 使用HTTP基本认证可以保护整个站点或是特定的action。 Xitrum不支持摘要认证(Digest Authentication),因为它容易受到中间人攻击(man-in-the-middle attack)。更好的安全机制,要
阅读全文
摘要:Xitrum被设计成在生产环境下以多实例运行在代理服务器或负载均衡器之后的系统。 / Xitrum instance 1Load balancer/proxy server Xitrum instance 2 \ Xitrum instance 3 Cache、session和SockJS sess
阅读全文
摘要:可以直接运行 Xitrum 或者在在负载均衡器如HAProxy, 或反向代理如Apache或Nginx之后: 打包路径 运行sbt/sbt xitrum-package来生成target/xitrum路径中的内容,准备向生产服务器部署 自定义xitrum-package 默认情况下,sbt/sbt
阅读全文
摘要:直接使用xitrum.Log对象 任何地方都可以直接使用xitrum.Log 使用xitrum.Log特质 如果想获得log在哪里创建的信息,应该继承xitrum.Log特质 在log/xitrum.log中,能看到从MyModel发过来的log信息 Xitrum的action扩展了xitrum.L
阅读全文
摘要:Xitrum为快速响应提供了大量的客户端和服务器端缓存。 在web服务层,小文件被缓存在内存中,大文件通过NIO零拷贝被发送。关于零拷贝可参照https://my.oschina.net/plucury/blog/192577 Xitrum的静态文件响应速度类似于Nginx。 在Web框架层,可以以
阅读全文
摘要:Before过滤器 Before过滤器在action执行之前执行。如果before过滤器响应返回了什么内容,在它之后的所有过滤器和action都不再运行 After过滤器 After过滤器在action运行之后运行,是不带参数的函数,返回值会被忽略 Around过滤器 如果有多个around过滤器,
阅读全文
摘要:在文件上传的form中,要设置 enctype="multipart/form-data" MyUpload.scalate: MyUpload.action: myFile是io.netty.handler.codec.http.multipart.FileUpload的一个实例,使用它的方法可以
阅读全文
摘要:Xitrum包含 jQuery Validation plugin用来在客户端做验证在服务器端提供验证辅助。 关于jQuery Validation plugin,参考http://bassistance.de/jquery-plugins/jquery-plugin-validation/ 默认验
阅读全文
摘要:一、Request 参数种类 1. 文本参数:名为textParams,类型为 scala.collection.mutable.Map[Sting, Seq[String]] 1)queryParams:URL中 ? 后面的参数,例:http://example.com/blah?x=1&y=2
阅读全文
摘要:Xitrum不会自动发送默认响应,必须调用respondXXX方法发送响应。如果没有调用respondXXX,Xitrum会保持HTTP连接,可以过后调用respondXXX。 调用 channel.isOpen 来检查 HTTP连接 是否还处于打开状态。还可以使用addConnectionClos
阅读全文
摘要:Xitrum提供了Ajax表单回发功能以支持 创建交互式的web页面 Xitrum的回发机制受了Nitrogen Web Framework的启发。 当form的submit事件被触发时,form会回发到ArticlesCreate。form的action的属性值会被加密。 回发可以被放到任何ele
阅读全文
摘要:配置好的模板引擎在调用renderView, renderFragment, respondView时被调用。 配置模板引擎 在config/xitrum.conf中,模板引擎可以通过两种方式进行配置。默认为 xitrum-scalate 如果所创建的项目不需要显示View,可以删除模板引擎设置使项
阅读全文
摘要:RESTful API: 符合RESTful架构的API称为RESTful API,不同的前端设备与后端进行通信的一种统一机制 什么是RESTful架构: (1)每一个URI代表一种资源; (2)客户端和服务器之间,传递这种资源的某种表现层; (3)客户端通过HTTP动词(GET用来获取资源,POS
阅读全文
摘要:在磁盘上的静态文件(Static Files) Xitrum项目路径结构 Xitrum会自动注册 public/ 下的文件和路径。它们的URL格式是: 引用它们的方法,publicUrl: 在开发环境上引用普遍版本(本例为mystyle.css),在生产环境上使用最小版本(本例为mystyle.mi
阅读全文
摘要:JavaScript Xitrum包含jQuery,有一些 jsXXX辅助方法 1. 添加JavaScript代码片段到View中 在action中,调用jsAddToView添加JS代码(可以多次调用) 在xitrum-demo中,调用 jsAddToView的是 jade文件,通过试验也可以在e
阅读全文
摘要:Action: Xitrum 提供了3种Action:普通Action, FutureAction 和 ActorAction 它们都是Trait,而不是 Class 1. 普通Action: 当请求到来时,Action实现类直接在Netty的 IO线程上运行,不能用普通Action来执行 消耗很长
阅读全文
摘要:参考的文档的位置: 1. http://xitrum-framework.github.io/guide/3.28/html/en/ (需要选择合适的版本,我选的是3.28,目前没有中文版) 可以选择Download PDF,下载英文Guide xitrum-en.pdf 2. API ScalaD
阅读全文
摘要:目前百度上没找到和Xitrum相关的技术博客,只能自己看它的Guide和Demo一点点研究了。 xitrum-en.pdf 3.28.2的分享 链接: https://pan.baidu.com/s/1ccpnI2 密码: n56k Xitrum简介: + +| Clients |+ +|+ +|
阅读全文