MojoliciousLite: 实时的web框架 概述
MojoliciousLite: 实时的web框架: SYNOPSIS 简介: # Automatically enables "strict", "warnings", "utf8" and Perl 5.10 features
use Mojolicious::Lite; # Route with placeholder
get '/api/:foo' => sub {
my $c = shift;
my $foo = $c->param('foo');
$c->render(text => "Hello from $foo.");
}; # Start the Mojolicious command system
app->start; zjzc01:/root/mojo# curl http://127.0.0.1:3000/api/xx
Hello from xx. zjzc01:/root/mojo# curl http://127.0.0.1:3000/api/abc123
Hello from abc123.zjzc01:/root/mojo# 描述: Mojolicious::Lite 是一个微型实时框架: Mojolicious::Lite 实现了下面的函数,自动导出。 any my $route = any '/:foo' => sub {...};
my $route = any '/:foo' => sub {...} => 'name';
my $route = any '/:foo' => {foo => 'bar'} => sub {...};
my $route = any '/:foo' => [foo => qr/\w+/] => sub {...};
my $route = any ['GET', 'POST'] => '/:foo' => sub {...};
my $route = any ['GET', 'POST'] => '/:foo' => [foo => qr/\w+/] => sub {...}; 声明 route 为any 在Mojolicious::Routes::Route, 匹配所有的HTTP 请求方法或者all. app my $app=app; 返回Mojolicious::Lite 应用对象 # Use all the available attributes and methods
app->log->level('error');
app->defaults(foo => 'bar'); del my $route = del '/:foo' => sub {...};
my $route = del '/:foo' => sub {...} => 'name';
my $route = del '/:foo' => {foo => 'bar'} => sub {...};
my $route = del '/:foo' => [foo => qr/\w+/] => sub {...}; 匹配DELETE 请求 get my $route = get '/:foo' => sub {...};
my $route = get '/:foo' => sub {...} => 'name';
my $route = get '/:foo' => {foo => 'bar'} => sub {...};
my $route = get '/:foo' => [foo => qr/\w+/] => sub {...}; 只匹配get请求 group group {...} 开始一个route group Routes: Routes 只是对请求过来的路径指向不同的函数,可以在路径中包含不同的占位符, 传进来的一个参数是$c 是 Mojolicious::Controller 对象本身,它也包含着HTTP request和HTTP reponse的对象: GET/POST 传进来的参数: use Mojolicious::Lite; # /foo?user=sri
get '/foo' => sub {
my $c = shift;
my $user = $c->param('user');
$c->render(text => "Hello $user.");
}; app->start;
MojoliciousLite: 实时的web框架 概述的更多相关文章
- WEB框架概述(译)
在学习WEB框架之前,我个人觉得需要搞清楚一件事:什么是WEB框架?在网上找了很多资料,觉得什么是WEB框架这篇文章讲的比较全面而清晰,本文作者Jeff Knupp. 全文如下: Web 应用框架,或 ...
- Web框架概述——React.js
目前,在前端Web开发中,三大热门框架为React.js,Vue.js,Angular.js .当然,三大框架各有各的优缺点,这里就不多说了,下面我就针对前段时间所学的React框架做一下整体知识点的 ...
- 二、Web框架实现
一.简单web(socket) 在前一篇WEB框架概述一文中已经详细了解了:从浏览器键入一个URL到返回HTML内容的整个过程.说到底,本质上其实就是一个socket服务端,用户的浏览器其实就是一个s ...
- Java开发工程师(Web方向) - 04.Spring框架 - 第5章.Web框架
第5章--Web框架 Web框架概述 Web框架单元测验 本次得分为:13.50/15.00, 本次测试的提交时间为:2017-09-25 1单选(2分) 关于Spring MVC中Dispatche ...
- Web框架之Django_01初识(三大主流web框架、Django安装、Django项目创建方式及其相关配置、Django基础三件套:HttpResponse、render、redirect)
摘要: Web框架概述 Django简介 Django项目创建 Django基础必备三件套(HttpResponse.render.redirect) 一.Web框架概述: Python三大主流Web ...
- tornado web 框架的认识
tornado 简介 1,概述 Tornado就是我们在 FriendFeed 的 Web 服务器及其常用工具的开源版本.Tornado 和现在的主流 Web 服务器框架(包括大多数 Python 的 ...
- web框架 之 Tornado
初识 Tornado : tornado web server 是使用python编写出来的一个轻量级.高可伸缩性和非阻塞IO的Web服务器软件,其特点是采用epoll非阻塞IO,相应快速,可处理数千 ...
- Python开发【第十五篇】:Web框架之Tornado
概述 Tornado 是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本.这个 Web 框架看起来有些像web.py 或者 Google 的 webapp,不过为了 ...
- Web框架之Tornado
概述 Tornado 是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本.这个 Web 框架看起来有些像web.py 或者 Google 的 webapp,不过为了 ...
随机推荐
- python----iter\next
1.说明:__getitem__\setitem可以迭代,它已经不被推荐了:建议使用__iter__\next. 2.python会先去检查__iter__\next然后再去检查__getitem__ ...
- eclipse android sdk javadoc
sdk 的函数不提示帮助信息 查了下是现在adt版本没有doc文件夹,拷贝了早期的版本docs过来 其他具体操作如下:http://blog.csdn.net/lyh7736362/article/d ...
- AOJ 2200 Mr. Rito Post Office(Floyd+单调DP)
[题目链接] http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=2200 [题目大意] 一张图中有陆路和水路,水路必须要有船才能走,当船 ...
- setInterval和setTimeout的使用区别
setTimeout和setInterval的使用 这两个方法都可以用来实现在一个固定时间段之后去执行JavaScript.不过两者各有各的应用场景. 方 法 实际上,setTimeout和setIn ...
- _00023 Kafka 奇怪的操作_001它们的定义Encoder达到Class数据传输水平和决心
博文作者:妳那伊抹微笑 博客地址:http://blog.csdn.net/u012185296 博文标题:_00023 Kafka 诡异操作_001自己定义Encoder实现Class级别的数据传送 ...
- Swfit中视图跳转
.跳转到任一UIViewController var sb = UIStoryboard(name: "Main", bundle:nil) var vc = sb.instant ...
- android开发SDcard 响应的文件相关处理(一)
android开发相关文件类的处理工具类: package com.gzcivil.utils; import java.io.File; import java.util.ArrayList; im ...
- WinRAR 自动解压 解压完成后,执行批处理文件
部分内容参考网页:http://bbs.kafan.cn/thread-1243208-1-1.html WinRAR 的自动解压文件功能使压缩包也能像 Setup 程序那样,双击后显示一个软件许可, ...
- Python核心编程读笔 11:模块
第12章 模块 1.基本概念 模块的文件名就是模块名字.py 每个模块都定义了自己唯一的名称空间 模块的搜索路径:会被保存在 sys 模块的 sys.path 变量里 >>>sys. ...
- C++中将int转变成string和string转变成int
int to string #include<iostream> #include<string> using namespace std; int main() { stri ...