masterzero / nextcloud
nextcloud用户管理的库
dev-master
2018-06-23 05:41 UTC
Requires
- php: >=7.0.0
This package is not auto-updated.
Last update: 2024-09-29 05:42:00 UTC
README
通过Laravel管理你的Nextcloud用户
设置
-
在终端使用以下命令安装此库。(当前库处于开发模式)
composer require masterzero/nextcloud dev-master
-
更新config/app.php中的服务提供者
'providers' => [ // ... MasterZero\Nextcloud\ApiServiceProvider::class, ]
-
更新config/app.php中的别名
'aliases' => [ // ... 'NextcloudApi' => MasterZero\Nextcloud\Facade\Api::class, ]
-
创建
config/nextcloud.php
,内容如下
return [ 'login'=> env('NEXTCLOUD_LOGIN', 'admin'), 'password'=> env('NEXTCLOUD_PASSWORD', '12345678'), 'baseUrl'=> env('NEXTCLOUD_BASEURL', 'https://'), ];
- 将以下参数添加到
.env
(可选)
NEXTCLOUD_LOGIN=admin NEXTCLOUD_PASSWORD=12345678 NEXTCLOUD_BASEURL=https://
使用方法
创建用户
// reqeust to API $data = NextcloudApi::createUser($username, $password); // do something with it if ($data['success']) { // do something ... } else { // do something else ... echo $data['message']; }
用户列表
// reqeust to API $data = NextcloudApi::getUserList(); // do something with it if ($data['success']) { foreach ($data['users'] as $userid) { // do something with $userid } } else { // do something else ... }
编辑用户参数
// reqeust to API $data = NextcloudApi::editUser('rabbit','quota', '200 MB'); if ($data['success']) { // do something ... } else { // do something else ... }
启用/禁用用户
// reqeust to API $data = NextcloudApi::enableUser('bird'); //$data = NextcloudApi::disableUser('turtle'); if ($data['success']) { // do something ... } else { // do something else ... }
异常
use MasterZero\Nextcloud\Exceptions\XMLParseException; use MasterZero\Nextcloud\Exceptions\CurlException; // ... try { // reqeust to API NextcloudApi::editUser('rabbit','quota', '200 MB'); } catch (XMLParseException $e) { // bad nextcloud answer } catch (CurlException $e) { // bad connection } catch (\Exception $e) { // bad something else }
多服务器使用
use MasterZero\Nextcloud\Api; // ... $api = new Api([ 'baseUrl' => 'http://develop.localhost:3500', 'login' => 'admin', 'password' => '12345678', 'sslVerify' => false, // use default value // 'apiPath' => 'custom/path/to/api.php', // 'userPath' => '', // 'enablePath' => '', // 'disablePath' => '', ]); $api->createUser( 'dummy', 'qwerty');