Скачать inject — Minecraft Моды — MetaMods

inject

Активный

Установок

0

Последнее обновление

6 месяцев назад

Версии

1.21 — 1.21.4
Сервер
Fabric
Библиотеки
Технологические

inject

inject представляет собой серверную библиотеку, значительно упрощающую процесс внедрения в Netty для разработчиков.

Возможности использования

Благодаря классу HttpInjector разработчики могут обрабатывать HTTP-запросы, поступающие на Minecraft сервер. Рассмотрим практический пример:

class MyEpicHttpInjector extends HttpInjector {
    @Override
    public HttpByteBuf intercept(ChannelHandlerContext ctx, HttpRequest request) {
        HttpByteBuf buf = HttpByteBuf.httpBuf(ctx);
        buf.writeStatusLine("1.1", 200, "OK");
        buf.writeText("Привет из Minecraft!");
        return buf;
    }
}

Процесс регистрации

Для Fabric используйте класс InjectFabric:

public class MyMod implements ModInitializer {
    @Override
    public void onInitialize() {
        InjectFabric.INSTANCE.registerInjector(new MyEpicHttpInjector());
    }
}

Для Spigot, Paper и совместимых платформ применяйте класс InjectSpigot:

public class MyPlugin extends JavaPlugin {
    @Override
    public void onEnable() {
        InjectSpigot.INSTANCE.registerInjector(new MyEpicHttpInjector());
    }
}

После настройки HTTP-инжектор будет отвечать текстом "Привет из Minecraft!" на любой HTTP-запрос, поступающий на порт Minecraft сервера.

$ curl http://localhost:25565
Привет из Minecraft!

Поддерживаемые веб-серверы

Библиотека совместима с различными популярными веб-серверами:

  • Spring Boot: модуль spring
  • Javalin: модуль javalin
  • Ktor: модуль ktor
  • Jetty: модуль jetty
  • Ручная обработка запросов: модуль http

Для более детального изучения доступны практические примеры в модуле examples.

Интеграция в проекты

Добавьте репозиторий andante в gradle:

repositories {
    maven("https://maven.mcbrawls.net/releases/")
}

Подключите необходимые зависимости:

dependencies {
    implementation("net.mcbrawls.inject:api:VERSION")

    // Для работы с HTTP
    implementation("net.mcbrawls.inject:http:VERSION")

    // Fabric:
    include(modImplementation("net.mcbrawls.inject:fabric:VERSION")!!)

    // Spigot/Paper:
    implementation("net.mcbrawls.inject:spigot:VERSION")

    // Дополнительные модули для Spring, Ktor и других платформ можно найти: Github repo.
}

Замените VERSION на актуальную версию из раздела релизов.

Участники проекта
andante

andante

Разработчик

radstevee

radstevee

Разработчик

Создан: 6 ноя 2024

ID: 63726