g
gogoerDec. 13, 2021, 8:29 a.m.

Rest Api сервер на QT

REST API

Здравствуйте.
Есть необходимость создать небольшой REST API сервер, который нужно будет запускать в том числе на платах типа Raspberry Pi.
Есть много платформ, на которых то можно реализовать (Django, Node.js ...) но мой основной фреймворк - QT. С остальными технологиями еще нужно разбираться, большого опыта нет.
Так вот вопрос - есть ли смысл пытаться сделать это на QT или будет слишком много мороки и мало толка?
Нашел вроде как готовый фреймворк для этой задачи - Cutelyst, построен на QT и позиционируется как решение для создания REST API сервисов. Может быть, у кого-то был подобный опыт и можете поделиться своим мнением?

We recommend hosting TIMEWEB
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.
13

мы писали на qt с использованием qtwebapp , но на джанге наверно проще, хотя если принять в расчет машину, я бы взял fastapi

  • Dec. 13, 2021, 8:52 a.m.

Если сервер не особо сложный будет (типо crud операции), то по моему мнению лучше всего выбрать NodeJS.

g

Да, сервер не шибко сложный планируется.
Суть в том, что несколько малинок подключаются к серверу через websocket, обмениваются сообщениями. Результаты общения складываются в базу. А через API можно получать доступ к информации.
Хотелось бы иметь возможность развернуть этот сервер и на самой малине, чтобы в случае отсутствия интернета все работало локально.

o
  • Dec. 13, 2021, 4:04 p.m.
  • (edited)

на qt нет готового http сервера, но есть другие с++ библиотеки, например, POCO тык , или библиотека для встраиванмых систем тык , или микро http сервер тык , есть еще boost тык ( тык ) и т.д. Можно поискать в списке conan.io

g

Вот проект cutelyst тык , он использует свой веб-сервер, а мы пишем на qt библиотеку для обработки запросов. Обработку json и работу с websocket на qt организовать довольно просто. Работа с базой данных тоже не проблема. Я попробовал собрать простой проект, вроде работает все.
Вот хотелось понять, стоит ли это использовать, может есть у кого опыт. Или все же лучше потратить время на разбирательство с тем же python и fastapi или же node.js с какой-нибудь надстройкой. Меня в cutelyst подкупает то, что там используется язык, который мне уже знаком) а с остальным нужно еще разбираться.

o

Писать надо на языке, который знает команда.

o
  • Dec. 15, 2021, 1:46 p.m.
  • (edited)

есть еще такие, на qt

тык

тык

g

Команда у нас пока небольшая: я да я. Работаю в основном на QT, поэтому и склоняюсь к этому же языку.
По поводу qhttpserver и QtWebApp, их я видел. Но они староваты, под QT6 наверно не заведутся без плясок с бубном.

o

Qt практически не ломает обратную совместимость, думаю они и под 4.8, и под 5.x, и под 6.х заведуться без проблем.

o

Я бы по тыкал палкой во все qt + boost + poco, потом выбрал.

g

Наверное так и сделаю) спасибо.

G

Здравствуйте. Я новичок. Где взять нормальные установщики PyQt4 и 5 под Windows? И инструкции по установке? То что в инете видел - не получается установить. Дома прямой инет и Win7. На работе proxy и Win10.
Заранее благодарен за ответ.

g

Тема немножно не про это. Создайте свою и задайте вопрос.

Comments

Only authorized users can post comments.
Please, Log in or Sign up
Fornex

Let me recommend you a great European Fornex hosting.

Fornex has proven itself to be a stable host over the years.

For Django projects I recommend VPS hosting

Following the link you will receive a 5% discount on shared hosting services, dedicated servers, VPS and VPN

View Hosting
Share on social networks
Donate

The EVILEG project has switched to a non-commercial basis and will develop solely on the enthusiasm of the site creator, the enthusiasm of users, donations and the hosting referral system

Thank you for your support

Available ways to support the project

PayPal

PatreonYandex.MoneyMore
AB

C++ - Test 006. Enumerations

  • Result:30points,
  • Rating points-10
MH

C++ - Тест 003. Условия и циклы

  • Result:42points,
  • Rating points-8
AB

C++ - Test 005. Structures and Classes

  • Result:50points,
  • Rating points-4
Popular publications in the last 90 Days
Last comments

EVILEG-CORE. Caching properties of model objects using model_cached_property

Здравствуйте. В общем меня интересует такой вопрос. Я пробовал это на Like , Dislike. Как я понимаю если не перевалидировать кеш то ничего не изменится на странице. Вернётся значение из кэша? От…
A

Qt/C++ - Lesson 006. QSqlQueryModel – Tables in Qt with SQL-query

Здравствуйте! Подскажите как сделать запрос к базе SQLite с двумя параметрами, в итоге нужно получить не список строк, а только факт наличия строк, соответсвующи именно двум условиям. В SQL…
A

Django - Tutorial 011. Adding comments to the site based on Django

https://mir74.ru/27323-12-krasavic-sdelali-podarok-stalnomu-gigantu.-rabotnicy-mmk-snyalis-dlya-yubileynogo-fotokalendarya.html
a

Django - Tutorial 011. Adding comments to the site based on Django

I read that Post and got it fine and informative.https://aflife.ru/

Django - Tutorial 023. Like Dislike system using GenericForeignKey

Хорошо. Большое спасибо. Посмотрю что из этого получится.
Now discuss on the forum
o

Запрос на изменение БД с помощью оператора UPDATE и странное поведение QTableView

или запрос к базе так https://www.w3schools.com/sql/sql_ref_order_by.asp или сортировка в модели через прокси модель https://doc.qt.io/qt-5/qsortfilterproxymodel.html
o

Как очичтисть очередь событий для конпки

нужно сделать связку qml и c++, тяжелые задачи отправляются на обработку в с++, в qml остаются только быстрые. и у кнопок есть свойство enabled: true\false при запуске\остановке з…
A

Развертывание QML приложения

Полностью согласен, что пример не удачный, но я так как раз попытался выразить то, что вы далее описали с примером со скадой, часть .dll и часть .qml с интерпритацией. И в Вашем ответе я ув…
AB

Sorting the added QML elements in the ListModel

I am writing an alarm clock in QML, I am required to sort the alarms in ascending order (depending on the date or time (if there are several alarms on the same day). I've done the sorting …
EK

HTTP server на Qt

Давно было, уже не помню как, но разрулил. Спасибо :)
About
Services
© EVILEG 2015-2022
Recommend hosting TIMEWEB