如何在其他应用程序中立即运行代码

问题描述 投票:1回答:1

我有两个Asp.Net网络应用程序,App 1和App 2.它们都使用相同的数据库。我试图从App 1发出命令,并立即在App 2中运行一些代码。

我能想到的唯一方法是在数据库中插入一个命令,让App 2每隔几分钟轮询一次数据库。但这意味着运行代码可能会有延迟。

有没有办法立即在App 2中运行代码?

asp.net .net web-applications push polling
1个回答
1
投票

您可以从一个应用程序激活HttpRequest到另一个应用程序,代码将立即运行。

我不知道你正在使用什么语言和平台,所以很难给你具体的例子,但这里有大纲:

在App2中创建一个页面。在标准ASP.Net中,您可以使用处理程序。在ASP Core中,您可以使用API​​控制器。两者都以JSON或XML返回单个值或完整对象。或者,如果您想返回HTML,则可以使用标准页面。后面的代码是你想要运行的。处理程序或控制器中呈现的页面或返回值是您希望App1返回的响应。

然后从App1向App2中的该页面发出HttpRequest并检查响应以查看如何继续(例如,如果代码成功运行)。

HttpRequest是为了防止你从App1的服务器端进行调用。如果要从客户端进行调用,则使用Ajax。在Ajax的情况下,你必须注意安全方面,因为你不想允许任何人从App2调用该页面,除非它背后的代码不会带来任何安全风险并且不返回任何敏感数据。

最后一个特定于您的场景的想法,因为两个应用程序都使用相同的数据库,您可以按照计划将所需的值添加到数据库,然后发出一个简单的HttpRequest。这样,您无需担心安全性或传递任何敏感信息。当App2收到请求时,它会检查数据库以查看该请求是否实际来自App1,然后处理它,否则忽略它。

© www.soinside.com 2019 - 2024. All rights reserved.