Sinatra:一个优雅地包装了Web开发的DSL
Sinatra程序的三个基本组成部分:
路由(route):
'/' 就是路由。路由可以是单一的路径,或者带有参数的路径(比如 /:name),甚至是正则表达式。对于Sinatra不知道的路由,Sinatra会返回404错误(作为App运行的时候),或者传递给下面的中间件(作为中间件运行的时候)。
方法(method):
get是方法。在Sinatra中,HTTP的四个方法GET/POST/PUT/DELETE都有相应的方法get/post/put/delete。
处理器(handler):
处理器就是最后的代码块,处理器的返回值就是Sinatra返回给客户端(主要是浏览器)的内容。返回值主要以字符串为主,也可以是包含状态码,消息头,消息体的数组。
Rack在Ruby的世界里面是一种构建服务端的最基本,但也是非常有意思的方式。 而且理解Rack也是理解Sinatra的基础,毕竟Sinatra是在Rack的基础上写出来的。 我们可以只用Rack搭建一个简单的后端程序。 直接上实例,代码保存到 config.ru ,然后在该文件夹下执行 rackup ,默认会在 http://localhost:9292 下显示。
构建一个Sinatra
Sinatra是一个基于Ruby的快速开发Web应用程序基于特定域(domain-specific)语言。在一些小项目中使用过它后,我决定一探究竟。
什么是Sinatra?
Sinatra的核心是Rack。 我写过一篇文章关于Rack,如果你对Rack的工作原理有些困惑,那篇文章值得一读。Sinatra构建在Rack之上:它在Rack之上提供了一个给力的DSL。
相关推荐
什么是Nancy呢?如果你学习过Ruby的话,就会知道Ruby中有个框架叫做Sinatra,Nancy就是Sinatra的.Net版本。如果你感觉微软的MVC过于笨重、过于繁琐,那么Nancy可能就是你苦苦寻找的东西。... 标签:web框架
**Sinatra** 是一个用Ruby编写的微型Web框架,它允许开发者以简洁的方式定义路由,从而快速搭建Web应用。Sinatra的核心概念是将HTTP请求映射到处理函数,这使得代码更加可读和易于维护。例如,你可以这样定义一个...
这个项目利用了“Eucalypt”微型框架以及“Bootstrap”模板,以Ruby编程语言和Sinatra框架为基础进行构建。下面我们将深入探讨这些关键知识点。 **Ruby**: Ruby是一种面向对象的、动态类型的编程语言,以其简洁、...
这个项目被称为“ginatra”,很可能是因为它结合了“Gin”(一个流行的Ruby Web框架Gin gem)和“Sinatra”(另一个知名的Ruby微型框架)。在Git仓库中,它被作为一个Web前端来使用,这表明它可能提供了对Git仓库的...
标题中的“gimlet”是一个基于Moonscript的微型Web应用程序框架,受到了Martini和Sinatra设计哲学的影响。在本文中,我们将深入探讨这个框架以及它所关联的技术领域。 首先,让我们了解一下“Martini”和“Sinatra...
Sinatra是一个基于Ruby的微型Web框架,它允许开发者用简洁的代码定义路由,处理HTTP请求。在bloggable项目中,Sinatra作为核心框架,负责接收用户请求,如GET和POST,然后调用相应的Ruby方法来执行操作,如显示博客...
Sinatra是一个轻量级的Ruby框架,用于构建Web应用程序。它以其简洁、直观的语法著称,使得开发者能够快速地搭建RESTful Web服务。在"sinatra-template-源码.rar"这个压缩包中,我们有机会深入理解Sinatra的工作原理...
2. **Sinatra**: Sinatra 是一个 Ruby 的微型 web 框架,它允许开发者使用简单的 DSL(领域特定语言)来定义路由和处理 HTTP 请求。 3. **CRUD**: 创建(Create)、读取(Read)、更新(Update)和删除(Delete)是...
它使用Sinatra(一个微型Ruby web框架)作为基础,并提供了丰富的预定义小部件(widgets),如图表、计数器、列表等,帮助用户快速创建自定义的仪表板。Dashing支持WebSockets,可以实现实时更新,确保数据的即时性...
Ruby on Sinatra是Ruby编程语言的一个微型框架,用于快速、简洁地构建Web应用。Sinatra以其简洁的语法和模块化设计而闻名,开发者可以轻松地创建路由、处理HTTP请求,并返回响应。在ImBrewer中,Sinatra被用来搭建...
2. **Sinatra 框架**:Sinatra 是基于 Ruby 的一个微型 web 框架,它允许开发者使用简洁的 DSL (Domain Specific Language) 来定义路由和处理 HTTP 请求。Sinatra 非常适合创建 RESTful API 和小型 web 应用程序。 ...
Sinatra,作为Ruby语言中的一个轻量级Web框架,以其简洁、高效的特性深受开发者喜爱。本文将详细介绍Sinatra框架以及如何运用它来创建一个功能完备的代码分享平台。 **Sinatra简介** Sinatra是基于Ruby的HTTP微型...
Sinatra是Ruby语言的一个轻量级Web应用框架,它允许开发者快速地构建Web服务。因此,这个压缩包可能包含了一个使用Sinatra框架开发的项目,或者是一些关于Sinatra编程的教程、示例代码或笔记。 标签“sinatra”...
1. **Ruby on Sinatra**:Sinatra 是一个基于 Ruby 的微型框架,用于快速开发 Web 应用程序。它简化了 HTTP 请求和响应处理,使得开发者能够更专注于业务逻辑。在 Fishbowl API 中,Sinatra 被用来定义路由、处理...
Sinatra是一个基于Ruby的微型Web框架,它遵循模型-视图-控制器(MVC)设计模式,但比传统的Web框架更加简洁。在Sinatra中,你可以用一种声明式的方式定义路由,即通过将URL路径映射到处理方法。例如: ```ruby get ...
2. **Sinatra框架:** Sinatra是Ruby的一个微型web框架,它允许开发者以一种简洁的方式定义HTTP路由,将特定的URL映射到处理代码上。例如,`get '/' do`表示当访问根路径时执行的代码块。 3. **Gem管理:** 在Ruby...
Sinatra是Ruby语言中的一个微型Web框架,它允许开发者以声明式的方式定义路由,将HTTP请求映射到特定的处理代码。Sinatra基于Ruby的 Rack库,可以与各种服务器和中间件集成,如Puma、WEBrick等。其特点在于代码结构...
2. **Sinatra 框架**: Sinatra 是一个基于 Ruby 的微型 web 框架,它允许开发者通过简单的DSL(领域特定语言)来定义路由、控制器和视图。例如,`get '/' do` 表示当用户访问网站根路径时执行的代码块。 3. **路由*...
1. **Sinatra基础**:Sinatra是一个基于Ruby的微型Web框架,它允许开发者通过定义路由来处理HTTP请求。比如,`get '/hello'` 将处理GET请求到'/hello'的路径,而`post '/submit'`将处理POST请求到'/submit'的路径。 ...
它基于Sinatra,一个微型的Web应用框架,但增加了更多的结构和功能,特别适合于构建RESTful服务。 Pliny的主要特点包括: 1. **中间件支持**:Pliny允许开发者使用和编写中间件来处理请求和响应。中间件可以用来...