MojoliciousLite: 实时的web框架 概述
2016-03-25 15:54
495 查看
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;
相关文章推荐
- 彻底理解字符编码
- c++ 类的使用 友元函数 重载运算符
- 解决oracle高版本的向低版本拷贝数据的方法
- C++的引用的一个测试例子
- 【涨知识】你家用的是A级锁还是B级锁,什么锁最安全?
- 虚拟现实竞争企业分析
- 智能电网学习1---基本术语与概念
- AsyncSocket库使用方法
- tar解压tar.bz2\tar.gz\tgz\;bzip2解压bz2;gzip解压gz
- 每个Android开发者都应该了解的资源列表
- tar.gz 是什么
- HDOJ 2114 Calculate S(n)(找周期)
- 1.3.1
- 研发流程的输出文件清单
- c++第二次作业2
- java.lang.UnsatisfiedLinkError: C:\apache-tomcat-8.0.21\bin\tcnative-1.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
- HDOJ 2114 Calculate S(n)(找周期)
- 操作系统 实验2 作业调度
- eclipse新建web项目运行时出现The requested resource is not available异常
- 6行代码玩转git