我有一个Drupal模块,可以在单独的服务器上与REST API进行通信,以进行用户注册和身份验证。该模块在多个站点上运行,这些站点指向可能运行不同版本的REST API的不同服务器。
理想情况下,我希望能够针对自己的终点运行每个站点,以防后端的更改破坏了事情。有没有办法在运行测试时动态指定不同的端点URL?或者我是否必须编辑每个站点的.test文件?
我正在努力保持模块的文件尽可能通用和灵活。我想我可以让.test文件查找可以覆盖URL的.inc文件,如果特定站点需要的话。有更好的方法吗?
答案 0 :(得分:1)
您可以使用变量,使用variable_get,并使用$ conf覆盖在settings.php中定义网站网址:
在.test文件中:variable_get('endpoint_url', NULL);
和settings.php:$conf['endpoint_url'] = 'http://foo/bar';
。这样,对于每个站点,您只需要编辑settings.php。