Sobes.tech
Junior — Middle

Оё шумо таҷрибаи кор бо технологияҳои веб ё серверҳои веб доред?

sobes.tech AI

Ҷавоб аз AI

ҳа, C/C++-да веб-технологиялар ва веб-серверлар бўйича тажриба HTTP серверларини яратиш, сўровларни ишлаш ва тармоқ сокетлари билан ишлашни ўз ичига олади. Масалан, оддий веб-серверни амалга ошириш учун libmicrohttpd ёки Boost.Asio каби китобхоналардан фойдаланиш мумкин.

Boost.Asio ёрдамида C++да оддий HTTP серверининг намунаси:

#include <boost/asio.hpp>
#include <iostream>

using boost::asio::ip::tcp;

int main() {
    try {
        boost::asio::io_context io_context;
        tcp::acceptor acceptor(io_context, tcp::endpoint(tcp::v4(), 8080));

        for (;;) {
            tcp::socket socket(io_context);
            acceptor.accept(socket);

            std::string response =
                "HTTP/1.1 200 OK\r\n"
                "Content-Type: text/plain\r\n"
                "Content-Length: 13\r\n"
                "\r\n"
                "Hello, world!";

            boost::asio::write(socket, boost::asio::buffer(response));
        }
    } catch (std::exception& e) {
        std::cerr << "Exception: " << e.what() << "\n";
    }
    return 0;
}

Бу код сокетлар билан асосий ишлаш ва HTTP сўровларини пастки даражада қайта ишлашни кўрсатади.