Отправка данных изображения в пост-запросе c ++ - PullRequest
0 голосов
/ 04 ноября 2019

Я пытаюсь отправить OpenCV Mat через почтовый запрос. Сначала я закодировал данные в base64 следующим образом:

void SendMatFrame::encode(cv::Mat img)
{
    std::vector<uchar> buf;
    cv::imencode(".jpg", img, buf);
    auto *enc_msg = reinterpret_cast<unsigned char*>(buf.data());
    m_encoded = boost::beast::detail::base64_encode(enc_msg, buf.size());
}

Затем создал свой почтовый запрос:

void SendMatFrame::send()
{
    boost::asio::connect(m_socket, m_endpointIter);

    boost::asio::streambuf request;
    std::ostream request_stream(&request);

    request_stream << "POST /calibration_result HTTP/1.1 \r\n";
    request_stream << "Host:" << m_address << ":" << m_port << "\r\n";
    request_stream << "User-Agent: C/1.0";
    request_stream << "Content-Type: multipart/form-data; charset=utf-8 \r\n";
    request_stream << "Content-Transfer-Encoding: base64\r\n";
    request_stream << m_encoded << "\r\n";
    request_stream << "Accept: */*\r\n";
    request_stream << "Connection: close\r\n\r\n";
    boost::asio::write(m_socket, request);
}

По какой-то причине я не получаю запрос на стороне сервера,Что-то не так в моем почтовом запросе? Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...