如何在Drupal模块中指定最简单的Web服务URL?

时间:2011-01-13 20:25:38

标签: web-services drupal testing automated-tests simpletest

我有一个Drupal模块,可以在单独的服务器上与REST API进行通信,以进行用户注册和身份验证。该模块在多个站点上运行,这些站点指向可能运行不同版本的REST API的不同服务器。

理想情况下,我希望能够针对自己的终点运行每个站点,以防后端的更改破坏了事情。有没有办法在运行测试时动态指定不同的端点URL?或者我是否必须编辑每个站点的.test文件?

我正在努力保持模块的文件尽可能通用和灵活。我想我可以让.test文件查找可以覆盖URL的.inc文件,如果特定站点需要的话。有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

您可以使用变量,使用variable_get,并使用$ conf覆盖在settings.php中定义网站网址:

在.test文件中:variable_get('endpoint_url', NULL);和settings.php:$conf['endpoint_url'] = 'http://foo/bar';。这样,对于每个站点,您只需要编辑settings.php。