goahead解析(一)---------route.txt
参考网址:https://www.embedthis.com/goahead/doc/users/
route.txt
1、auth=xxx
该语句指定了该请求需要用那种方式验证身份。
(1)auth=form
表单式身份验证。该方法是在web界面中由用户输入账号和密码,提交后进行验证。
例子:
route uri=/img/
route uri=/action/login methods=GET|POST handler=action redirect=200@/index.asp redirect=401@/img/login.asp
route uri=/action/logout methods=POST handler=action redirect=200@/img/login.asp
route uri=/ auth=form handler=continue redirect=401@/img/login.asp
解析:
第一行是指定未进行登陆验证之前可访问的目录,登陆界面相关的css和js文件都需要在该目录下。
第二行指明登录操作的重定向,验证成功返回状态为200时将界面重定向到index.asp,验证失败时,继续在login.asp界面。
第三行是退出登录的重定向。
第四行定义与所有其他 URI 匹配的route,并规定基于表单的身份验证。continue 处理程序对用户进行身份验证,如果用户成功通过身份验证,则继续处理,让其他处理程序为请求提供服务并生成响应。如果身份验证失败,用户将被重定向回登录页面。
(其中的 Continue 处理程序是不执行任何操作的伪处理程序。)
(2)auth=basic
基本身份验证。该方法是在浏览器中弹出验证界面。该方法并未对密码进行任何加密处理。
route uri=/index.asp auth=basic
如下图:
(3)auth=digest
摘要式身份验证。该方法是在基本身份验证的基础上,对密码进行MD5加密。界面和设置方式与基本身份验证基本相同。
2、handlers
名字 | 描述 |
---|---|
action | 用于将URL的请求与C函数绑定的处理程序 |
continue | 不进行任何操作的伪处理程序,常用于登陆验证。 |
cgi | 为 CGI 程序提供服务的处理程序 |
file | 用于提供网页、图像和静态资源的处理程序 |
jst | 为动态内容提供 Javascript 模板的处理程序 |
options | 用于提供 HTTP 选项和跟踪方法的处理程序 |
redirect | 处理route重定向的处理程序 |
upload | 处理文件上传的处理程序 |
常用语句
route uri=/action handler=action
route uri=/ methods=OPTIONS|TRACE handler=options
route uri=/ extensions=asp,css,js handler=jst
通过上述语句指定每种请求对应的handle。
goahead源码中有这样一个函数,用于根据route.txt中的handle选择如何处理http请求
3、methods
标准的http方法有 : DELETE, GET, OPTIONS, POST, PUT,HEAD and TRACE.
序号 | 方法 | 描述 |
---|---|---|
1 | GET | 请求指定的页面信息,并返回实体主体。 |
2 | HEAD | 类似于 GET 请求,只不过返回的响应中没有具体的内容,用于获取报头 |
3 | POST | 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST 请求可能会导致新的资源的建立和/或已有资源的修改。 |
4 | PUT | 从客户端向服务器传送的数据取代指定的文档的内容。 |
5 | DELETE | 请求服务器删除指定的页面。 |
6 | OPTIONS | 允许客户端查看服务器的性能。 |
7 | TRACE | 回显服务器收到的请求,主要用于测试或诊断。 |
常用的就是GET与POST。
4、uri
URI、URL、URN概念:
- URI = Uniform Resource Identifier 统一资源标志符
- URL = Uniform Resource Locator 统一资源定位符
- URN = Uniform Resource Name 统一资源名称
简单来说,就是URI是抽象的定义,不管用什么方法表示,只要能定位一个资源,就叫URI。
可以使用两种方法定位:1,URL,用地址定位;2,URN 用名称定位。
所以URL是URI的子集。
(根据我浅显的理解,在goahead中,可以认为url是绝对路径,uri是相对路径。)
5、extensions
route uri=/ extensions=jst,asp handler=jst
extensions用于定义新扩展。
goahead解析(一)---------route.txt相关推荐
- 多个html合成txt,Python - 将多个HTML页解析为单个TXT文件
我试图从X个HTML文件解析特定内容到单个TXT文件.Python - 将多个HTML页解析为单个TXT文件 我已经dirtily编码如下: #!/usr/bin/python import sys, ...
- .net core 源码解析-mvc route的注册,激活,调用流程(三)
.net core mvc route的注册,激活,调用流程 mvc的入口是route,当前请求的url匹配到合适的route之后,mvc根据route所指定的controller和action激活c ...
- Python解析pdf转为TXT格式
#完成pdf到TXT转变了,无法完成TXT到Excel转变import xlwt # 写入文件 import xlrd # 打开excel文件 from xlutils.copy import cop ...
- 深入源码解析类Route
微软官网对这个类的说明是:提供用于定义路由及获取路由相关信息的属性和方法.这个说明已经很简要的说明了这个类的作用,下面我们就从源码的角度来看看这个类的内部是如何工作的. 1 public class ...
- 上交所行情文件解析之mktdt00.txt
一.前言 近期在研究上交所行情接口,由于接口比较复杂,种类也很多,所以从最基础的文件行情开始研究吧. 二.行情文件接口 之前研究期货行情,都是通过API来获取的,包括实时行情,产品信息等等,现在证券行 ...
- android lrc歌词解析,正则表达式练习: android 歌词解析lrc 转 txt 代码
//主要用到了java io 的基本知识 和 正则表达式 package com.su; import java.io.BufferedReader; import java.io.File; imp ...
- 一个用JAVA解析TXT格式文本文档的程序举例
实体类 package txt; public class AliDataRecord {private String FSTR_SCATSID;private String FSTR_DESC;pr ...
- goahead内嵌web——用户登录
goahead设备内嵌web--环境搭建 基于前一章节环境搭建的基础上,goahead用户登录操作流程. 在web资源目录下创建一个用户登录的HTML文件,login.html文件代码内容如下 < ...
- Goahead嵌入式linux移植资料整理
环境 官方文档:https://www.embedthis.com/goahead/doc/ 源码下载: goahead-4.1.0-src.tgz 系统平台:Ubuntu 12.04.4 gcc v ...
最新文章
- Effective C++ 的52个条款列表
- cvtColor函数
- visual c 语言参考手册pdf,Microsoft-Visual-C-6-0语言参考手册(三).pdf
- 浙江计算机二级报名步骤,浙江2016年9月计算机二级考生报名流程
- methods vue过滤器 和_数据动态过滤技巧在 Vue 项目中的实践
- java实现订单物品计算佣金,java三角形、NextDay、佣金问题代码
- 科软-信息安全实验3-Rootkit劫持系统调用
- freebsd 安装mysql_Freebsd中mysql安装及使用笔记
- 华为usg6000配置手册_三国志11手机版,问题解决手册 1.4.4版本
- 关于Shine-hale
- 大一计算机时间差怎么求,总结:如何使用Excel计算时差和日期差,只需阅读本文!...
- P1195 口袋的天空
- 娜璋荆棘(二)不忘曾经眼里的对方多美好,程序员的荆棘人生
- 封装获取非行内样式函数
- 用人人商城也能玩转心愿众筹了,创意无限,代码皆可实现
- 《MSSQL2008技术内幕:T-SQL语言基础》读书笔记(上)
- JavaSE学习笔记 详解Set集合中实现类:LinkedHashSet以及TreeSet
- 各类文件系统镜像制作
- 奖金575万!81岁拓扑数学家摘得数学界诺奖「阿贝尔奖」
- 隧道变形在线监测过程中应用的光纤应变传感器