php – Laravel – 返回SSH输出
发布时间:2020-12-14 19:38:43 所属栏目:大数据 来源:网络整理
导读:感谢您对此主题感兴趣.我在Laravel很新,我有一个小问题.也许这很容易! 我的Laravel中有一个SSH模块可以这样工作: 用户使用 Linux命令填充textarea元素. 该命令与Ajax一起传递给位于’controllers’文件夹中的名为getExecute()的方法 我想这个方法返回我的S
感谢您对此主题感兴趣.我在Laravel很新,我有一个小问题.也许这很容易!
我的Laravel中有一个SSH模块可以这样工作: 用户使用 Linux命令填充textarea元素. 该命令与Ajax一起传递给位于’controllers’文件夹中的名为getExecute()的方法 我想这个方法返回我的SSH服务器的完整响应,但这不会发生.该方法返回的唯一内容是空格. 例如:我传递命令’ls -la’,我的响应是Linux找到的所有文件夹,就像在终端上一样. public function getExecute() { if(Request::ajax()): $ssh_command = Input::get('ssh_command'); $ssh_response = null; SSH::run($ssh_command,function($line) { return $line.PHP_EOL; }); endif; } OBS:Ajax连接已经过测试,没问题! 解决方法
终于解决了!方案如下:
首先,我在我的班级中创建了一个名为$output的变量. private $output; 然后我修改了我的方法: public function postExecute() { $ssh_command = Input::get('ssh_command'); $ssh_response = SSH::run($ssh_command,function($line) { $this->output = $line.PHP_EOL; }); return $this->output; } 我的方法不是更多Ajax,但我希望我所要做的就是像以前一样回滚到我的ajax方法.谢谢大家! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |