AppServer
Введение
На основе Sanic создан простой App для онлайн-загрузки и установки. Можно скачать установочный пакет онлайн или установить IPA на iPhone онлайн.
Главная страница
Загрузка приложения
Страница с подробностями приложения
Редактирование приложения
Функции
И многое другое...
Использование
Измените хост в Config на адрес вашего компьютера.
Установите libpng12 (CentOS уже протестирован, другие системы пока не тестировались).
Для систем Linux:
yum install libpng12
(для CentOS);Клонируйте репозиторий:
git clone https://github.com/skytoup/AppServer
;Перейдите в папку проекта:
cd AppServer
;gcc vendors/pngdefry/pngdefry.c -o pngdefry
;pip install -r requirements.txt
;python main.py
.https://your_bing_host:8000
.git clone https://github.com/skytoup/AppServer
.cd AppServer
.Измените app/config/config.py:BaseConfig.host на нужный IP-адрес. Неправильная настройка может привести к невозможности загрузки IPA на iOS.
Соберите образ Docker:
docker build -t app_server ./
.docker run -d -p 8000:8000 -v /path/to/data:/www/AppServer/data -v /path/to/log:/www/AppServer/log --name AppServer app_server
.docker run -d -p 8000:8000 --name AppServer app_server
.https://your_bing_host:8000
.pip install -r requirements_test.txt
.pytest -q tests
.Это простой фронтенд, который не претендует на профессиональный уровень. Подробности можно найти здесь 👉 AppServerHTML.
Используется самоподписанный сертификат, который автоматически генерируется после каждого изменения хоста в Config.
После запуска сервера необходимо ввести в адресной строке хост из Config, а не 127.0.0.1, localhost или 0.0.0.0. Также следует использовать протокол https, а не http.
Чтобы установить IPA на устройство iOS, необходимо перейти на страницу с подробной информацией о приложении и нажать кнопку «Установить сертификат», так как используется самоподписанный сертификат.
При установке на CentOS и Ubuntu могут возникнуть проблемы 👉 здесь.
В системах Linux для запуска aapt может потребоваться установить libpng12, например, для CentOS: yum install libpng12
.
Более подробную информацию можно найти 👉 FAQ.
{
code: int, # см. таблицу ниже
ok: bool, # успешность запроса
msg: str, # информация о запросе
datas: dict/array, # данные запроса
}
code | Описание |
---|---|
0 | Успех |
-1 | Ошибка |
POST /upload/app
Form
Параметр | Обязательный | Описание |
---|---|---|
package | Да | Загружаемый установочный файл |
msg | Нет | Информация об обновлении |
Возвращаемые данные: объект или нет (если приложение не существует, то данные возвращаются)
Параметр | Описание |
---|---|
id | Идентификатор приложения |
type | Тип установочного файла: 0 — iOS, 1 — Android |
name | Название |
icon | Значок |
detail | Краткое описание |
short_chain | Короткая ссылка |
package_name | Имя пакета |
create_at | Время создания |
GET /apps/<app_type>/page/<page>?t=<time>
Параметр | Обязательный | Описание |
---|---|---|
app_type | Да | Тип приложения: iOS, android, all |
page | Да | Номер страницы, начиная с 1 |
time | Да | Для первой страницы — текущее время, для остальных — время получения первой страницы |
kw | Нет | Фильтр по названию приложения |
Возвращаемые данные: массив
Параметр | Описание |
---|---|
id | Идентификатор приложения |
type | Тип установочного файла: 0 — iOS, 1 — Android |
name | Название |
icon | Значок |
detail | Краткое описание |
short_chain | Короткая ссылка |
package_name | Имя пакета |
version_name | Версия последнего загруженного установочного файла |
version_code | Код версии последнего загруженного установочного файла |
create_at | Время создания |
GET /apps/<app_id>
Параметр | Обязательный | Описание |
---|---|---|
app_id | Да | Идентификатор приложения |
Возвращаемые данные: словарь
Параметр | Описание |
---|---|
id | Идентификатор приложения |
type | Тип установочного файла: 0 — iOS, 1 — Android |
name | Название |
icon | Значок |
detail | Краткое описание |
short_chain | Короткая ссылка |
package_name | Имя пакета |
create_at | Время создания |
DELETE /apps/<app_id>
Параметр | Обязательный | Описание |
---|---|---|
app_id | Да | Идентификатор приложения |
Возвращаемых данных нет
Параметр | Описание |
---|---|
PUT /apps/<app_id>
Json
Параметр | Обязательный | Описание |
---|---|---|
app_id | Да | Идентификатор приложения |
- | - | - |
name | Нет | Название |
short_chain | Нет | Короткая ссылка |
detail | Нет | Краткое описание |
Возвращаемых данных нет Получение временной метки первой страницы
Возвращаемые данные: массив
Параметр | Описание |
---|---|
id | Идентификатор версии приложения |
app_id | Идентификатор приложения |
version_name | Название версии |
version_code | Номер версии |
package | Адрес загрузки установочного пакета |
size | Размер установочного пакета |
update_msg | Информация об обновлении |
create_at | Время создания |
plist | Адрес для скачивания plist. Этот параметр присутствует только в том случае, если приложение относится к типу iOS |
Удаление определённой версии приложения DELETE /apps/<app_id>/versions/<app_version_id>
Параметр | Обязательный | Описание |
---|---|---|
app_id | Да | Идентификатор приложения |
app_version_id | Да | Идентификатор версии приложения |
Возвращаемые данные: отсутствуют
Параметр | Описание |
---|---|
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )