Skip to content
docs.
WORKSPACE

Your documentation

Explore the project catalog
Localzet ServerАсинхронный PHP-серверTriangleФреймворк и компонентыMIX IDИдентификация и интеграцииHack APIПубличные API хакатонаACNПроект и компонентыUserlay / UserNetПроект и компонентыAxiomПроект и компонентыМесседжинг через почтуПроект и компонентыLWT / JWT / JOSEПроект и компонентыФинансовая аналитика KimaiПроект и компонентыМультипарадигмальная БДПроект и компонентыZorin PlatformПроект и компонентыZorin TrustПроект и компонентыFloraScope / VegwatchПроект и компонентыaegis-qДокументация проектаaevumdbДокументация проектаauditДокументация проектаauto-invest-managerАвтотрейдерcaine-companionДокументация проектаcertbot-cloudflareДокументация проектаClusterLocalzet Server / ClustercmdveilДокументация проектаConsolePHP CLICronБиблиотеки Localzet Serverdata-connectorДокументация проектаdevice-controlDevice Controlenn-projectДокументация проектаEventsБиблиотеки Localzet ServerflowsintДокументация проектаforgeДокументация проектаHttpClientБиблиотеки Localzet ServerinterpreterСобственный языкinvariaДокументация проектаkeynotesДокументация проектаknotrouteKnotroutelaravel-personal-analyticsДокументация проектаlocalzet-osДокументация проектаmeridianДокументация проектаMQTTБиблиотеки Localzet Servernano-kernelСобственная ОСNoterДокументация проекта✓personal-analyticsДокументация проектаProxyБиблиотеки Localzet ServerPSRБиблиотеки Localzet ServerPSR-7Библиотеки Localzet Serverrschs-monitorДокументация проектаsemsealДокументация проектаshardsealДокументация проектаSocketIOБиблиотеки Localzet ServerSOCKS5Библиотеки Localzet Serverstandalone-analyticsДокументация проектаstatic-php-cliДокументация проектаStorageБиблиотеки Localzet ServersutureДокументация проектаtempoweaveДокументация проектаttsСинтез речиTunnelБиблиотеки Localzet Serverui-kitUI KitvesperДокументация проектаWebAnalyzerWebAnalyzerzorin-access-brokerДокументация проектаzorin-authority-brokerДокументация проектаzorin-authority-sdk-phpДокументация проектаzorin-authority-sdk-pythonДокументация проектаzorin-authority-sdk-tsДокументация проектаzorin-client-intelДокументация проектаzorin-device-core-aospДокументация проектаzorin-host-agentДокументация проектаzorin-native-labДокументация проектаzorin-nodeДокументация проектаzorin-opsДокументация проектаdonstu-python-sdkДокументация проектаfloortraceFloortraceserver-rsLocalzet Server / Cluster
Catalog

Noter

Утилита командной строки для создания и управления заметками

Section titled “Утилита командной строки для создания и управления заметками”

[Image: ](#) [Image: ](#) [Image: ](#) [Image: ](#) [Image: ](#)

  • Быстрое создание заметок через командную строку
  • Отправка заметок на удаленный сервер-хранилище

Установка и обновление

Section titled “Установка и обновление”

Вы можете установить Noter, выполнив следующую команду, где https://your.custom.url и your_key_value - URL и ключ вашего сервера-хранилища.

Окно терминала
curl --user "$NOTER_AUTH" https://notes.example.com/

Чтобы создать заметку, просто выполните команду:

Окно терминала
noter "Ваш текст заметки"

Или вы можете передать текст через стандартный входной поток:

Окно терминала
echo "Ваш текст заметки" | noter

После установки Noter, файл конфигурации будет создан в /usr/local/noter/noter.zconf. Этот файл будет содержать ваши настройки URL и ключа:

NOTER_URL = "https://your.custom.url"
NOTER_KEY = "your_key_value"

Если при установке вы не укажете флаги -u и -k - параметры будут пусты и программа не сможет функционировать!

Чтобы ваш сервер мог обрабатывать заметки, он должен принимать POST-запросы с содержимым заметок. Вот пример схемы работы бэкенда:

  1. HTTP сервер: Ваш сервер должен принимать HTTP POST-запросы на указанный URL.
  2. Параметры запроса: Запрос должен содержать JSON с полем content, который содержит текст заметки.
  3. Аутентификация: Ваш сервер должен проверять наличие и правильность ключа API (X-API-KEY) в заголовках запроса.
  4. Сохранение заметки: После проверки ключа, сервер должен сохранить содержимое заметки в базе данных или другом хранилище.

Пример реализации на PHP

Section titled “Пример реализации на PHP”
<?php
// Конфигурация
$apiKey = "your_key_value";
$database = []; // Пример хранилища (может быть заменено на базу данных)
// Проверка метода запроса
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$headers = getallheaders();
// Проверка API ключа
if (isset($headers['X-API-KEY']) && $headers['X-API-KEY'] === $apiKey) {
// Получение содержимого запроса
$data = json_decode(file_get_contents('php://input'), true);
if (isset($data['content'])) {
// Сохранение заметки (в примере в массиве, может быть заменено на базу данных)
$database[] = $data['content'];
echo json_encode(['status' => 200, 'message' => 'Note saved']);
} else {
echo json_encode(['status' => 400, 'message' => 'Invalid content']);
}
} else {
echo json_encode(['status' => 403, 'message' => 'Invalid API key']);
}
} else {
echo json_encode(['status' => 405, 'message' => 'Invalid request method']);
}
<?php // config/route.php
use Triangle\Database\Manager;
use Triangle\Exception\BusinessException;
use Triangle\Http\{Request, Response};
use Triangle\Router;
Router::post('/save', function (Request $request): Response {
// Конфигурация
$apiKey = "your_key_value";
// Проверка API ключа
if ($request->header('X-API-KEY') === $apiKey) {
if ($content = $request->post('content')) {
// Генерация UUID для идентификации записи
$id = generateId();
// Сохранение заметки в базе данных
Manager::table('Noter')->insert(compact('id', 'content'));
// Возврат в консоль идентификатора заметки
return response($id);
} else {
throw new BusinessException('Invalid content', 400);
}
} else {
throw new BusinessException('Invalid API key', 403);
}
});

Source · AGPL-3.0