Delphi Web& amp;的当前选择是什么? Web服务开发

时间:2010-12-04 21:10:03

标签: delphi intraweb datasnap

我正在玩Delphi。我的大部分桌面开发都是在.Net和嵌入式系统中完成的。我在RoR&amp ;;中完成了一些Web开发。 Python(Django,CherryPy)我有兴趣在一个项目中破解,该项目将是一个带有本机客户端和Web客户端的Web服务(REST或SOAP)。

因为我最近被重新启发学习Delphi,我很好奇用Delphi构建Web服务和Web客户端的选项是什么。大多数Delphi文档都有点过时,但到目前为止我已经找到了这些选择:

  • 的DataSnap
  • 接近网页
  • WebBroker的
  • IntraWeb的
  • RemObjects的Data Abstract和RemObjects SDK

我觉得WebSnap已经死了,但其他技术仍在开发中。是否有关于调查哪种技术的指导?

P.S。我意识到Delphi并不是一个广受欢迎的网页开发选择,但我很想尝试,因为我一直在学习VCL。

9 个答案:

答案 0 :(得分:6)

Web Service Toolkit是FPC,Lazarus和Delphi的Web服务包; “Web服务工具包”旨在通过FPC,Lazarus和Delphi用户简化Web服务的消费和创建。更好地从svn检查,因为0.5版本实际上是过时的。

答案 1 :(得分:6)

您可以将我们的Synopse SQLite3 Framework添加到您的列表中。

有一些有趣的功能:

  • 在服务器端和客户端管理数据(即定义和访问数据为常规Delphi类)的ORM方法 - 类似于RoR中的ActiveRecord;);
  • Multi-tier architectured;
  • 没有数据库或dll可以部署(使用嵌入式SQLite,没有任何外部dll) - 你甚至不能使用SQLite,而是使用纯Delphi编写的简单快速的内存数据库(我已经开始{{3} },与数据库无关);
  • 非常优化的HTTP / 1.1多线程服务器(但您可以通过其他协议进行通信,甚至可以在同一进程内完全本地进行通信,而无需任何客户端/服务器);
  • 数据传输使用标准JSON,因此您可以在Delphi客户端(AJAX客户端)中接收相同的数据;
  • 客户端/服务器是RESTful的,用非常优化的Delphi代码编写(有些部分甚至在分析后用asm编写,速度和内存使用率低);
  • 如果RESTful方法不够用,也可用于定义类似DataSnap的fork of Zeos;
  • 完全开源,编译和工作从Delphi 6到XE(对所有版本都支持完全Unicode,因为它基于引擎核心的UTF-8)。

答案 2 :(得分:4)

作为ISAPI dll托管的RESTful服务器端方法调用或仅使用Indy HTTP Server组件。它实际上是一种非常简单和强大的方法,可以让您快速入门,而且没有大的学习曲线。

答案 3 :(得分:4)

DelphiMVCFramework是一个功能强大的RESTful框架,也用于网站开发 https://github.com/danieleteti/delphimvcframework

DMVCFramework功能

  • RESTful(RMM Level 3)兼容
  • 带参数映射的精美网址
  • 使用Mustache模板生成的服务器端页面
  • 使用STOMP和Apache ActiveMQ或Apache Apollo(beta)的消息传递扩展
  • 可以在使用Redis或MySQL作为状态服务器的负载平衡环境中使用
  • 集成RESTClient
  • 适用于DelphiXE3或更好的
  • 综合测井系统
  • 使用起来非常简单。您可以在几分钟内提高工作效率!

以下是 DMVCFramework开发人员指南 https://danieleteti.gitbooks.io/delphimvcframework/content/

如果您需要支持,官方的facebook群组有超过600名用户https://www.facebook.com/groups/delphimvcframework/

我是主要的开发者,但有超过6个活跃的贡献者。

答案 4 :(得分:3)

WebHub是另一个成熟的,虽然鲜为人知的第三方Delphi网络框架。

答案 5 :(得分:3)

可以用来构建webservices服务器的其他选择,有点类似于datasnap或remobjects / dataabstract,如下所示。几年前我用kbmMW做了一些工作,它是一个可靠的库。我认为kbmMW和RealThinCLient都有免费和/或开源版本:

RealThinClient

kbmMW

答案 6 :(得分:2)

我们有一个用Delphi Prism / ASP.NET编写的Delphi服务器应用程序的Web前端。它工作得很好,并且允许我们在.NET环境中利用我们的Delphi语言技能。

答案 7 :(得分:1)

这个很老了,但是很多东西都改变了,我自己离开了Intraweb并去了UNIGUI,因为它基于EXTJS并生成单页应用程序。

答案 8 :(得分:1)

自从我在这篇文章中留下我的最后一条消息已经两年了, 虽然uniGUI仍然是在Delphi中创建SPA的唯一解决方案,但似乎IW17将成为真正的前沿,Delphi历史上的水域除数。客户端渲染无需服务器通信,Wordpress集成,无需编写javascript中的单行,如其他框架,websockets,fiber,我们的“Delphi React”。