如何使用 Laravel 在 Mikrotik 中创建新用户?

How to Create New User in Mikrotik Using Laravel?

我正在尝试在 Laravel 中使用 Mikrotik PHP API 添加新用户。我可以将 API 用于其他用途(例如查看用户信息),但是当我尝试创建新用户时,它什么也没给我,甚至没有错误,只是将我重定向到预期页面。

我的路线是

Route::post('/isp/addUser', 'MainController@addUser');

我的表单请求是

<form method="POST" action="{{ action('MainController@addUser') }}">
   {{ csrf_field() }}
   @foreach ($networks as $network)
        <input type="hidden" name="user_name" value="{{ $user->name }}">
        <input type="hidden" name="ip" value="{{ $network->ip }}">
        <input type="hidden" name="user" value="{{ $network->m_username }}">
        <input type="hidden" name="pass" value="{{ $network->m_password }}">
   @endforeach
        <button type="submit" class="btn btn-primary btn-sm text-uppercase">
                <strong>add</strong>
        </button>
 </form>

我的控制器方法是

public function addUser(Request $request) {
        $API = new routeros_api();
        $API->user_name = $request->user_name;
        $API->ip = $request->ip;
        $API->user = $request->user;
        $API->pass = $request->pass;

        if ($API->connect($request->ip, $request->user, $request->pass)){
          $API->comm("/ppp/secret/add/name={{ $API->user }}/password=123456/service=ppoe/profile=1-MBPS");
          $API->disconnect();
        }

        return redirect('/isp');
    }

这甚至没有给出任何错误,所以我没有得到任何线索。我想我没有正确发送请求,但不知道该怎么做。

要创建用户,您应该发送

$API->comm('/user/add',['name'=>$username,'password'=>$password,'group'=>'read']);

有关更多信息,您可以查看 https://mikrotik.com/documentation/manual_2.4/System/Users.html

希望这对您有所帮助