Программы на C++. Форум разработчиков
-
Anonymous
Мой самописный код http-сервера на С++ отказывается подключаться
Сообщение
Anonymous »
Ниже мой файл server.h
Код: Выделить всё
#include
#include
#include
#include
#include
#include
class Server {
public:
Server();
Server(std::string ip_address,int port);
~Server();
void startListen();
private:
int m_socket;
int port;
std::string ip_address;
long message_in;
unsigned int m_socket_address_len;
void acceptConnection(int &new_socket);
std::string buildResponse();
void sendResponse();
int m_new_socket;
std::string server_message;
int server_start();
void close_server();
struct sockaddr_in m_socketAddress;
};
А вот мой файл server.cpp
Код: Выделить всё
#include "server.h"
#include
#include
using namespace std;
const int BUFFER_SIZE = 30720;
Server::Server(std::string ip_address,int port)
{
this->ip_address = ip_address;
this->port = port;
this->m_socket_address_len = sizeof(m_socketAddress);
this->server_message = buildResponse();
int x = server_start();
}
Server::Server()
{
}
Server::~Server()
{
}
int Server::server_start()
{
m_socket = socket(AF_INET, SOCK_STREAM, 0);
if(m_socket < 0)
{
return 1;
}
m_socketAddress.sin_family = AF_INET;
m_socketAddress.sin_port = htons(port);
m_socketAddress.sin_addr.s_addr = inet_addr(ip_address.c_str());
if (bind(m_socket,(sockaddr *)&m_socketAddress, m_socket_address_len) < 0)
{
return 1;
}
return 0;
}
void Server :: close_server()
{
close(m_socket);
exit(0);
}
void Server :: startListen()
{
if(listen(m_socket,20)
Подробнее здесь: [url]https://stackoverflow.com/questions/78738933/my-self-written-http-server-code-in-c-is-refusing-to-connect[/url]
1720864635
Anonymous
Ниже мой файл server.h
[code]#include
#include
#include
#include
#include
#include
class Server {
public:
Server();
Server(std::string ip_address,int port);
~Server();
void startListen();
private:
int m_socket;
int port;
std::string ip_address;
long message_in;
unsigned int m_socket_address_len;
void acceptConnection(int &new_socket);
std::string buildResponse();
void sendResponse();
int m_new_socket;
std::string server_message;
int server_start();
void close_server();
struct sockaddr_in m_socketAddress;
};
[/code]
А вот мой файл server.cpp
[code]#include "server.h"
#include
#include
using namespace std;
const int BUFFER_SIZE = 30720;
Server::Server(std::string ip_address,int port)
{
this->ip_address = ip_address;
this->port = port;
this->m_socket_address_len = sizeof(m_socketAddress);
this->server_message = buildResponse();
int x = server_start();
}
Server::Server()
{
}
Server::~Server()
{
}
int Server::server_start()
{
m_socket = socket(AF_INET, SOCK_STREAM, 0);
if(m_socket < 0)
{
return 1;
}
m_socketAddress.sin_family = AF_INET;
m_socketAddress.sin_port = htons(port);
m_socketAddress.sin_addr.s_addr = inet_addr(ip_address.c_str());
if (bind(m_socket,(sockaddr *)&m_socketAddress, m_socket_address_len) < 0)
{
return 1;
}
return 0;
}
void Server :: close_server()
{
close(m_socket);
exit(0);
}
void Server :: startListen()
{
if(listen(m_socket,20)
Подробнее здесь: [url]https://stackoverflow.com/questions/78738933/my-self-written-http-server-code-in-c-is-refusing-to-connect[/url]