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

时间:2017-12-16 15:58:56

标签: php laravel mikrotik

我正在尝试使用Mikraik PHP API在Laravel中添加新用户。我可以将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');
    }

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

1 个答案:

答案 0 :(得分:0)

用于创建用户,您应该发送

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

有关详细信息,请查看https://mikrotik.com/documentation/manual_2.4/System/Users.html

希望这会有所帮助