Gambas服务器页面

从Gambas 2.9开始,有一些方式借用脚本解释器来允许你编写我称之为“服务器页面”的类ASP文件。

将下面的内容放入一个文本文件,设置文件属性为可执行并运行它。

#!/usr/bin/env gbw3
<%
DIM sEnv AS String
%>
    
<!-- Variable declaration must come before any HTML -->
    
<html>
    
<h2>CGI script environmental variables</h2>
    
<table border="1" cellspacing="0" cellpadding="2">
    
  <tr>
    <th align="left">Name</th>
    <th align="left">Value</th>
  </tr>
    
<%FOR EACH sEnv IN Application.Env%>
  <tr valign="top">
    <td><%=sEnv%></td>
    <td><%=Application.Env[sEnv]%>&nbsp;</td>
  </tr>
<%NEXT%>
    
</table>

</html>

就像你所看到的,服务页面是一个脚本,但是执行脚本的是 gbw3, 而不是 gbs3'。

gbw3 实际上是 gbs3 的一个符号链接。当 gbs3 检测到自己是从符号链接 gbw3 运行的,它就知道将执行一个服务器页面而不是一个脚本。然后 gbs3 将转换服务器页面为...一个正常的脚本,并会执行它。

除了使用 #!/usr/bin/env gbw3 固定内容的初始化行之外,语法非常类似于ASP页面。

  • <% XXX %> 引入任何Gambas代码。

  • <%= XXX %> 评估一个Gambas表达式,翻译成HTML,并插入在html内部。

注意,缺省使用gb.web 组件。所以可以用Session 对象、Response对象、Request对象、诸如此类。

这些Gambas服务器页面是CGI脚本,并且在你的首选WEB服务器上必须被像任何其他脚本一样来管理。

这个特性正在试用。请报告任何你使用中的问题!

使用额外组件

要使用其他组件,服务器页面实现了一个名为 USE 的特殊指令:

USE "_component name_"

该指令在IDE中的项目属性对话框的组件选项卡中选中组件时加载组件。

请注意,组件名称必须指定为字符串,即引号之间。

See Also