CppCMS URL使用
Artyom觉得URL分为三个组成部分:
Script_Name / Path_Info ? Query_String
比方以下的:
/foo/bar.php/test?x=10
Script_Name: /foo/bar.php
Path_Info: test
Query_String: x=10
这三个都是CGI变量。
CppCMS中提供了方法定义Script_Name, 比方:
mapper().root("/hello");
也就是全部的URL都应该以/hello开头,/hello就是Script_Name变量的值。
对于mapper(),我眼下知道的是它和dispatcher作用相反,可是除了上面的root外,我还没实用过,不是非常清楚它的详细功能。
经常使用的是dispatcher,它能够使用正則表達式去匹配URL的Path_Info部分,假设匹配成功则将请求转发给详细的函数去运行,而且能够利用正則表達式提取URL中的部分数据,作为參数传递个处理函数。这个处理函数CppCMS称作为action。
dispatcher假设接受的正則表達式为"",则代表凡是没有匹配的URL,都会调用它的action.
dispatcher().assign("",&hello::welcome,this);
详细能够參考文档:
http://cppcms.com/wikipp/en/page/cppcms_1x_tut_url_mapping#Actions
CppCMS URL使用的更多相关文章
- HTML URL地址解析
通过JavaScript的location对象,可获取URL中的协议.主机名.端口.锚点.查询参数等信息. 示例 URL:http://www.akmsg.com/WebDemo/URLParsing ...
- URL安全的Base64编码
Base64编码可用于在HTTP环境下传递较长的标识信息.在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式.此时,采用Base64编码不仅比较简短,同时也具有不可 ...
- Android业务组件化之URL Scheme使用
前言: 最近公司业务发展迅速,单一的项目工程不再适合公司发展需要,所以开始推进公司APP业务组件化,很荣幸自己能够牵头做这件事,经过研究实现组件化的通信方案通过URL Scheme,所以想着现在还是在 ...
- ASP.NET Core的路由[1]:注册URL模式与HttpHandler的映射关系
ASP.NET Core的路由是通过一个类型为RouterMiddleware的中间件来实现的.如果我们将最终处理HTTP请求的组件称为HttpHandler,那么RouterMiddleware中间 ...
- Node.js:path、url、querystring模块
Path模块 该模块提供了对文件或目录路径处理的方法,使用require('path')引用. 1.获取文件路径最后部分basename 使用basename(path[,ext])方法来获取路径的最 ...
- angular2系列教程(十一)路由嵌套、路由生命周期、matrix URL notation
今天我们要讲的是ng2的路由的第二部分,包括路由嵌套.路由生命周期等知识点. 例子 例子仍然是上节课的例子:
- MVC通过路由实现URL重写
public static class WebApiConfig { public static void Register(HttpConfiguration config) { config.Ro ...
- 【转】java通用URL接口地址调用方式GET和POST方式
java通用URL接口地址调用方式GET和POST方式,包括建立请求和设置请求头部信息等等......... import java.io.ByteArrayOutputStream; import ...
- linux字符串url编码与解码
编码的两种方式 echo '手机' | tr -d '\n' | xxd -plain | sed 's/\(..\)/%\1/g' echo '手机' |tr -d '\n' |od -An -tx ...
随机推荐
- 【NGROK】快速实现本地Web服务到外网的映射
NGROK官网:https://ngrok.com NGROK百科:http://baike.baidu.com/view/13085941.htm?fr=aladdin 使用ngrok(Window ...
- 修改字符串 ToCharArray()
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- PHP缓存主要技术
1.普遍缓存技术: 数据缓存:这里所说的数据缓存是指数据库查询PHP缓存机制,每次访问页面的时候,都会先检测相应的缓存数据是否存在,如果不存在,就连接数据库,得到数据,并把查询结果序列化后保存到文件中 ...
- 统计图表类库--libchart使用简介
1.饼图 #载入类文件 include "../libchart/classes/libchart.php"; header("Content-type: image/p ...
- ZOJ 3326 An Awful Problem 模拟
只有在 Month 和 Day 都为素数的时候才能得到糖 那就模拟一遍时间即可. //#pragma comment(linker, "/STACK:16777216") //fo ...
- Chapter 1.简单工厂模式
该篇文章通过一个写计算器控制台程序,来导入文章主题. 首先,要注意代码规范,变量命名有意义,不能随意用A,B,C; 功能要封装好,不要写在一个主函数里,另外要考虑后期需求的更改,如果出现多个函数 ...
- python学习笔记——第三章 串
第三章 字符串学习 1.字符串不灵活, 它不能被分割符值 >>> format = "hello, %s. %s enough for ya?" >> ...
- 采用sharedPreference保存数据
1.sharedPreference保存数据 package com.example.login.service; import java.io.BufferedReader; import java ...
- android软键盘弹出隐藏的监听
通过网上搜索关于软键盘的隐藏弹出的监听,有几种方式,其中最有效的方式是在View的Onlayout()里面做文章 具体代码: 将布局视图自定义,重写onlayout()方法,然后在主Activity里 ...
- winform 之1---窗体介绍
窗体是winform开发的基础,需要掌握窗体的创建.属性.调用和窗体传值等等. 1.在项目中添加窗体很简单,在项目上点击右键,选择添加windows窗体即可为项目添加新的窗体. 2.窗体的属性设置,右 ...