初始化-安装依赖

This commit is contained in:
2026-03-03 10:06:12 +08:00
parent 3f349a35a4
commit ec8cac4221
187 changed files with 26292 additions and 0 deletions

View File

@@ -0,0 +1,51 @@
<?php
namespace plugin\saipackage\app\controller;
use plugin\saiadmin\basic\OpenController;
use Saithink\Saipackage\service\Terminal;
use support\Request;
use support\Response;
use Throwable;
use Workerman\Protocols\Http\ServerSentEvents;
class IndexController extends OpenController
{
/**
* 执行终端
* @param Request $request
* @return void
* @throws Throwable
*/
public function terminal(Request $request): void
{
// SSE 消息
$connection = $request->connection;
$connection->send(new Response(200, [
'Content-Type' => 'text/event-stream',
'Cache-Control' => 'no-cache',
'Connection' => 'keep-alive',
'X-Accel-Buffering' => 'no',
'Access-Control-Allow-Origin' => '*',
'Access-Control-Allow-Credentials' => 'true',
'Access-Control-Expose-Headers' => 'Content-Type',
], "\r\n"));
// 消息开始
$connection->send(new ServerSentEvents([
'event' => 'message', 'data' => 'start'
]));
// 生成器
$generator = (new Terminal())->exec();
foreach ($generator as $chunk) {
$connection->send(new ServerSentEvents([
'event' => 'message', 'data' => $chunk
]));
}
// 关闭链接
$connection->close();
}
}