Servlets G-WAN URI servlet剖析
可以通过Servlets G-WAN URI servlet剖析,servlets,uri,restful-url,g-wan,Servlets,Uri,Restful Url,G Wan,可以通过http://domainName.com/strangesubfolder/?inc 我觉得这个servlet映射很奇怪,但它适合我的需要。我在gwan用户手册中找不到映射描述 如果我错了,请纠正我,并确认这是否是预期行为。是,这是标准功能 “?”告诉G-WAN它是一个servlet。如果没有“?”,它将在WWW文件夹中查找该文件 更新: 现在我明白你的困惑了 自从版本3.3.27以来,这一点已经改变,因此用户可以轻松地创建restful URL 阅读2012年3月27日的更新 现在
http://domainName.com/strangesubfolder/?inc
我觉得这个servlet
映射很奇怪,但它适合我的需要。我在gwan用户手册中找不到映射描述
如果我错了,请纠正我,并确认这是否是预期行为。是,这是标准功能 “?”告诉G-WAN它是一个servlet。如果没有“?”,它将在WWW文件夹中查找该文件 更新: 现在我明白你的困惑了 自从版本3.3.27以来,这一点已经改变,因此用户可以轻松地创建restful URL 阅读2012年3月27日的更新 现在需要将“?”放在实际servlet名称之前。通过这样做,G-WAN可以有效地将“/”重写为“&”,这样您就可以在不编写任何代码的情况下使用restful URL
//Old way
http://domain/?user/profile&user1
http://domain/?blog/archive&2012&march
//New way (more restful no '&')
http://domain/user/?profile/user1
http://domain/blog/?archive/2012/march
是的,正如Richard正确地(并立即感谢Richard!)解释的那样,这是预期的行为
目录/gwan/../csp/script.c
用于存储必须运行的servlet,而/gwan/../www/script.c
用于存储用作HTTP资源的文件
相应的URL是GET/?script.c
和GET/script.c
HTTP请求中相应地反映了/csp
或/www
文件夹中使用的任何子目录:GET/folder/?script.c
用于动态内容,而GET/folder/script.c
用于静态内容
选择将查询字符(可由其他字符替换)从旧的GET/csp?/folder/script.c
表单移动到新的GET/folder/?script.c
表单是出于以下需要:
- 区分
名称和servlet
名称(请求可能缺少定义的“默认”编程语言的servlet扩展,如果没有定义,则为C)文件夹
- 在HTTP请求中允许任意数量的
子目录
- 在HTTP查询中允许任意数量的
查询参数
- 区分HTTP请求中的
和文件夹
查询参数
- 在上述所有情况下都可以使用
请求RESTFUL
GET/folder/?script/arg1/value1/arg2/value2/arg3/value3
默认情况下,这是一个C脚本,除非另一种语言(可用于脚本编写的15种语言之一)被定义为“默认”语言
请注意,下载档案中提供的50多个脚本示例说明了此方案,页面上也提供了此方案。我感到奇怪的不是“?”,而是“奇怪的子文件夹”。据我所知,应通过http://domainName.com/**?subfolder/inc**访问inc.c。但现在,它是…**/strangesubfolder/?inc**原来,strangesubfolder在csp下。但是现在,请看url,csp位于奇子文件夹下。正如我所知,“…/?奇子文件夹/inc”有不同的含义,即运行名为奇子文件夹.C的C脚本,输入参数inc(=&inc)作为GET方法。如果这是一个标准功能,我可以将多个级别的子文件夹置于/csp下,然后通过http://donaminName.com/sub1/sub2/../subN/?cscript/para1=1/para2=2/../paramN=NI更新我的答案访问这些页面。是,使用“....”子文件夹/inc”将使“inc”成为url参数。