在Delphi中修改Rest服务器上的URL

5

通常情况下,这是在Web服务器配置中完成的,在Apache中使用.htaccess文件中的URL重定向条目。 - mjn
是的,如果您安装了微软提供的URLRewrite模块,它也可以在IIS上使用(至少7,可能6)。 - Marjan Venema
1
@mjustin和@Marjan:这是一个独立的服务器,因此它不在Apache或IIS下运行。这个问题基本上只限于了解Delphi一些Web功能的人。 - Alister
重写有什么进展吗? - teran
3个回答

3
命名约定是(Delphi XE3):

http://my.site.com/datasnap/rest/URIClassName/URIMethodName[/inputParameter]

您可以通过更改TDSHTTPWebDispatcher组件属性中的“datasnap”和“rest”部分轻松更改URL。只需更改类和方法的名称即可更改URL的类名和方法名。但是,URL仍然必须具有4个组件,因此例如它可以是:

http://my.site.com/api/v1/People/Listing

看这里:

http://docwiki.embarcadero.com/RADStudio/XE3/en/REST#Customizing_the_URL_for_REST_requests


如果您使用TDSHTTPService(XE5+),则可以删除属性中的DataSnap部分。 - Eskil Mjelva Saatvedt

3

您可以使用IIS或Apache来实现这一点,确实可以重写URL以使其指向您喜欢的服务。

这样做提供了一些额外的优势(主要是安全性和可扩展性)。例如,您可以创建一个双服务器的故障转移设置,或者您可以创建多台包含您的服务的计算机,并让您的Web服务器执行负载平衡。

这样做将提供额外的日志记录功能,如果您想轻松地提供其他Web内容,也很容易拥有一个完整的Web服务器。


2
+1 它有很多优点,我无法想象任何生产服务器不使用它,例如支持 HTTPS/SSL 而不需要触碰 Delphi 端。 - mjn

0

这是一个独立的服务器,因此不使用Apache或IIS。 - Alister

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