首页 > 解决方案 > 生产环境API调用URL中使用emsserver/emsserver.dll

问题描述

我创建了一个利用 RAD Studio 的 EMS 服务器功能的应用程序。该开发已在生产环境中完成并经过测试。EMS 服务器文档显示,为了进行 API 调用,需要将 emsserver.dll 包含在 URL 中。

https://{hostname}/emsserver/emserver.dll/API/Login?token={TokenValue}

我遇到的大多数 API 都没有将 dll 嵌入到 URL 中。

https://{hostname}/API/Login?token={TokenValue}

这没什么大不了的,因为 API 调用可以正常工作。我只是想知道是否有可以在 RAD 服务器或 IIS 中使用的属性或设置来默认 URL 的 emsserver/emsserver.dll 部分。

标签: iisemsrad-studio

解决方案


你的意思是你想在IIS中重定向或重写urlhttps://{hostname}/API/Login?token={TokenValue}https://{hostname}/emsserver/emserver.dll/API/Login?token={TokenValue}

如果这是您的 reuqimrent,我建议您可以尝试使用 url rewrite 扩展来实现您的 reuqirement。

你可以从这个 url 安装它,并将下面的url重写规则添加到你的 web.config 文件中。

<system.webServer>

<rewrite>
<rules>
                <rule name="Redirect to dll">
                    <match url="API/Login" />
                    <action type="Rewrite" url="https://{hostname}/emsserver/emserver.dll/API/Login" />
                </rule>

</rules>
</rewrite>
</system.webServer>

推荐阅读