Http post request - отправлен, но он не работает
- Привет! Итак, я создаю приложение на языке C++, которое сохраняет некоторые метрики с компьютера, а затем загружает их на сервер (сделанный с помощью PHP), чтобы пользователь мог получить доступ к данным позже в какой-то момент.
Этот код, который я создал для этой работы, размещен ниже.
Строка с сообщением, взята с почтальона. Теперь проблема в том, что все, кажется, хорошо выполняется в методе, но я не получаю никаких данных в свою базу данных. Это, конечно, не проблема PHP, потому что вручную он работает. Есть идеи, что это может вызвать проблему ?
Что я уже пробовал:
Это тот самый код, который я придумал, который отправляет http post запрос:
BOOL SendPostRequest(string server, string message) { struct sockaddr_in address; unsigned long ulAddr; SOCKET sock; int connectResult; int messageSize = strlen(message.c_str()); sock = socket(AF_INET, SOCK_STREAM, 0); if (sock == INVALID_SOCKET) { closesocket(sock); return FALSE; } address.sin_family = AF_INET; address.sin_port = htons(80); ulAddr = inet_addr(server.c_str()); memcpy(&address.sin_addr, &ulAddr, sizeof ulAddr); connectResult = connect(sock, reinterpret_cast<sockaddr*>(&address), sizeof address); if (connectResult != 0) { closesocket(sock); return FALSE; } send(sock, message.c_str(), messageSize, 0); closesocket(sock); return TRUE; }
И я называю/использую его вот так:
string message = "POST /submit.php?Url=www.example.com&Username=Revolution&Password=samplepassword HTTP/1.1" "Host: localhost" "Cache-Control: no-cache"; BOOL result = SendPostRequest("192.168.1.1", message);
Richard MacCutchan
Какой ответ вы получаете от post-запроса, какая информация обрабатывается в PHP-коде? Вам нужно проследить путь до конца как через клиент, так и через сервер.
Richard MacCutchan
int messageSize = strlen(message.c_str());
Почему вы используете strlen
вот, и не message.length
?