Delphi Web Script中的Web部分是什么?

4

我目前正准备将“Delphi Web Script”集成到我的应用程序中,基本上只作为脚本引擎(与函数、类等交互); 在我看来,这是标准 Delphi 开源质量的绝佳软件。但出于好奇,

该项目的“Web 部分”到底是什么?

打算如何使用?

它在商业上曾经使用,并取得了一些成功吗?

谢谢!

2个回答

3
正如ain所说,最初的用途是用于类似PHP、ASP的服务器端网页生成,但它也能够进行通用目的的使用,这正是我使用它的原因。由于我没有使用DWScript的"web"功能,因此大部分"面向Web"的特性都没有被移植过来(只有HTML过滤器实际上被移植了)。
如果有人想要处理移植问题,Web功能仍然在SourceForge存储库中可用。然而,它们可能已经过时,除了简单的重命名方法和类之外,自从DWSII以来,脚本引擎已经增加了各种特性。例如,它现在能够对单个编译后的脚本进行多线程安全执行,而旧的代码库则建立在一次只能由一个线程执行编译后的脚本的限制上。
另一方面,一些新的特性可以简化移植工作,最近添加的简单WebServer演示使用RTTI公开了TWebResponse & TWebRequest等内容(在DWSII中手动公开)。不利的一面是,这只在最新的Delphi版本中才可能。

2
据我所知,这个脚本引擎的原始作者主要专注于使得将Pascal脚本嵌入HTML页面成为可能,就像PHP一样。因此,它被命名为“Delphi Web Script”。虽然当前维护者Eric Grange的重点是将其用作通用脚本引擎,但仍然可以将其用于Web目的 - 为此,您可以使用库的“filters”功能。请查看dwsHtmlFilter单元以获取HTML过滤器。

1
PHP不会在HTML页面中“嵌入”脚本。它本身就是脚本,并且生成HTML页面。这是你想要表达的吗? - Rob Kennedy
有点像,我的意思是您可以拥有预处理的HTML,其中可以在特殊标记之间嵌入脚本,例如<% ...%>(或PHP的情况下为<?php ...?>)。 如果您有一个大文件,其中一半是“普通HTML”,另一半是要预处理的某种脚本语言,那么它是生成HTML的脚本还是在其中嵌入脚本的HTML页面? - ain
PHP始终是生成HTML的脚本。不在PHP标记中的任何内容都被视为“echo”语句。HTML解释器(如浏览器)不执行PHP,因此它绝对不是嵌入HTML的PHP脚本。 - Rob Kennedy
1
我想这是一种哲学问题... 我在PHP手册中注意到了这一点: PHP代表“PHP:超文本预处理器”,它是一种广泛使用的开源通用脚本语言,特别适用于Web开发,并可嵌入HTML。 - ain

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接