Anatomy of G-WAN URI servlets



gwan/csp/strangesubfolder/inc.c可以通过http://domainName.com/strangesubfolder/?inc访问

我觉得这个servlet映射很奇怪,但它适合我的需要。我在gwan用户手册中找不到映射描述。

如果我错了,请纠正我,并确认这是否是预期的行为。

是的,这是一个标准功能。

"?"告诉G-WAN它是一个servlet。如果没有"?"它将在WWW文件夹中查找该文件。

更新:

现在我明白你的困惑了。

自3.3.27版本发布以来,这一点已经更改,因此用户可以轻松地制作restful URL的

G-WAN时间表

阅读2012年3月27日的更新。

现在您需要放置"?"在实际servlet名称之前。通过这样做,G-WAN可以有效地将"/"重写为"&amp因此,您可以使用像这样的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.cGET /script.c

/csp/www文件夹中使用的任何子目录都相应地反映在HTTP请求中:GET /folder/?script.c用于动态内容,GET /folder/script.c用于静态内容。

选择将'?'查询字符(可以用其他字符替换)从旧的GET /csp?/folder/script.c形式移动到新的GET /folder/?script.c形式是出于以下需要:

  • 区分servlet名称和folder名称(请求可能缺少定义的"默认"编程语言的servlet扩展,如果没有定义,则为C)
  • 在HTTP请求中允许任意数量的sub-directories
  • 在HTTP查询中允许任意数量的query arguments
  • 区分HTTP请求中的foldersquery arguments
  • 使得在所有上述情况下都可以具有CCD_ 21请求

我们花了一段时间才找到最简单的功能组合,但经验表明这很有效。

下面是一个RESTFUL查询的例子,它同时具有子文件夹和查询参数:

GET /folder/?script/arg1/value1/arg2/value2/arg3/value3

默认情况下,这是一个C脚本,除非另一种语言(可用于脚本编写的15种语言中)被定义为"默认"语言。

请注意,下载档案中提供的50多个脚本示例说明了该方案,该方案也在开发人员页面上提供。

最新更新