【发布时间】:2021-11-05 00:27:32
【问题描述】:
我正在中继来自 C# 应用程序的 HTTP 请求,方法是将 JSON 数据发送到 localhost 烧瓶应用程序,使用 python 发送请求,并将响应中继回我的 C# 应用程序。需要这样做,因为我正在处理的服务器是第 3 方并且指纹 SCHANNEL 请求并发送回虚拟数据(对 Powershell 也是如此,但不是 curl、Postman 或 Python)。
var process = new Process();
process.StartInfo = new ProcessStartInfo()
{
FileName = "cmd.exe",
Arguments = @" /k python Assets\Scripts\server.py",
UseShellExecute = true
};
process.Start();
我找到了这个解决方案,它使用了一个端点 (/shutdown)
def shutdown_server():
func = request.environ.get('werkzeug.server.shutdown')
if func is None:
raise RuntimeError('Not running with the Werkzeug Server')
func()
收到一条警告说它已被弃用。我可以忍受,但我的强迫症让我想要正确地做到这一点。警告告诉我这是一个 hacky 解决方案。
我是 python/flask 的新手。有什么好的方法可以解决这个问题?
旁注:process.Kill() 不起作用。希望是这样。
【问题讨论】: