All Downloads are FREE. Search and download functionalities are using the official Maven repository.

cpp-qt5-qhttpengine-server.README.md.mustache Maven / Gradle / Ivy

There is a newer version: 7.8.0
Show newest version
## Qt5 HTTP Server based on the Qhttpengine
This server was generated by the [openapi-generator]
(https://openapi-generator.tech) project.
By using the [OpenAPI-Spec](https://github.com/OAI/OpenAPI-Specification) from a remote server, you can easily generate a server stub.  
-

To see how to make this your own, look here:

[README]((https://openapi-generator.tech))

- API version: {{appVersion}}{{^hideGenerationTimestamp}}
- Build date: {{generatedDate}}{{/hideGenerationTimestamp}}
{{#infoUrl}}
For more information, please visit [{{{infoUrl}}}]({{{infoUrl}}})
{{/infoUrl}}

## QHTTPEngine

[![Build Status](https://travis-ci.org/nitroshare/qhttpengine.svg?branch=master)](https://travis-ci.org/nitroshare/qhttpengine)
[![MIT License](http://img.shields.io/badge/license-MIT-blue.svg?style=flat)](http://opensource.org/licenses/MIT)

Simple set of classes for developing HTTP server applications in Qt.

### Documentation

To learn more about building and using the library, please visit this page:

https://ci.quickmediasolutions.com/job/qhttpengine-documentation/doxygen/


### Viewing the code
You can view the code using an editor like Microsoft Visual Studio Code or you can 
Use QtCreator and browse for the root CMakeLists.txt and load it as a project

### Build with make
Install the tools [Linux/Debian]
```
sudo apt install cmake build-essential libssl-dev qtbase5-dev qtbase5-dev-tools git curl
```

To build, go to the `server` folder
```
make 
```

To run the server
```
./build/src/cpp-qt5-server &
```
#### Invoke an API
```
curl -X GET    http://localhost:8080/v2/store/inventory
curl -X POST   http://localhost:8080/v2/store/order   -H "Content-Type: application/json" -d "{ \"id\": 22, \"petId\": 1541, \"quantity\": 5, \"shipDate\": \"2018-06-16T18:31:43.870Z\", \"status\": \"placed\", \"complete\": \"true\" }"
curl -X GET    http://localhost:8080/v2/pet/findByStatus
curl -X GET    http://localhost:8080/v2/store/inventory
```

### Run and build with docker
Building with docker multistage
If you dont have docker install [here](https://docs.docker.com/install)
Add yourself to the docker group

```
docker build --network=host -t cpp-qt5-server .
```
Running with docker 
```
docker run --rm -it --name=server-container cpp-qt5-server 
```

#### Invoking an API
Mind the IP here
```
curl -X GET   http://172.17.0.2:8080/v2/store/inventory
curl -X POST  http://172.17.0.2:8080/v2/store/order -H "Content-Type: application/json" -d "{ \"id\": 22, \"petId\": 1541, \"quantity\": 5, \"shipDate\": \"2018-06-16T18:31:43.870Z\", \"status\": \"placed\", \"complete\": \"true\" }"
```

use this command to get the container IP
```
docker inspect server-container | grep "IPAddress"
```
To exit from the command line 
```
Ctrl + p + q
```
To stop container
```
docker stop 
```
or to terminate and quit
```
Ctrl+C
```




© 2015 - 2024 Weber Informatics LLC | Privacy Policy