Я делаю код, где мне нужно выполнить запрос GET и манипулировать полученной информацией. Для этого я использую C++ REST SDK (кодовое название «Касабланка») для запросаC++ Утверждение отладки с ошибкой HTTP-запроса
Это мой код
#include <cpprest/http_client.h>
#include <cpprest/filestream.h>
using namespace utility;
using namespace web;
using namespace web::http;
using namespace web::http::client;
using namespace concurrency::streams;
//This method i saw on the Microsoft documentation
pplx::task<void> HTTPStreamingAsync()
{
http_client client(L"http://localhost:10000/Something"); //The api is running at the moment
// Make the request and asynchronously process the response.
return client.request(methods::GET).then([](http_response response)
{
// Print the status code.
std::wostringstream ss;
ss << L"Server returned returned status code " << response.status_code() << L'.' << std::endl;
std::wcout << ss.str();
// TODO: Perform actions here reading from the response stream.
auto bodyStream = response.body();
// In this example, we print the length of the response to the console.
ss.str(std::wstring());
ss << L"Content length is " << response.headers().content_length() << L" bytes." << std::endl;
std::wcout << ss.str();
});
}
void main(int argc, char **argv)
{
HTTPStreamingAsync().wait();
//...
}
И когда я использую отладки я получаю ошибку на следующей строке:
вернуться client.request (методы :: GET) .Затем ([] (http_response ответ)
С отладки я вижу, что переменная "клиент" имеет содержание, но я все еще получаю эту ошибку:
Я Google это ошибка, и большинство людей говорят, что это ошибка кода (пытается получить доступ к некоторым частям памяти) ...
Любые идеи?
В другом месте у вас может быть '__acrt_first_block == header', и это используется как утверждение, которое не выполняется (' false'). Код Microsoft, который вы вставили в свой вопрос, выполняет это утверждение и указывает его ... Поэтому вам может потребоваться добавить более подробную информацию, чтобы люди могли вам помочь. – CPHPython
Я искал во всех файлах проекта, и я не нашел ни одного «__acrt_first_block == header». Код выше всего его кода, который у меня есть в этом проекте. – Tazz
Теперь я исправил проблему. Теперь у меня есть другая проблема с телом ответа, который всегда возвращает 1, но я исправлю это !. Спасибо всем за помощь! :) – Tazz