Definir autenticação HTTP básica em Casablanca
Estou tentando modificar oTutorial de Casablanca para incluir autenticação HTTP básica para acessar oAPI do Prosper:
auto fileStream = std::make_shared<ostream>();
// Open stream to output file.
auto requestTask = fstream::open_ostream(U("results.html")).then([=](ostream outFile)
{
*fileStream = outFile;
// Create http_client to send the request.
http_client_config config;
credentials creds( "username", "password" );
config.set_credentials( creds );
http_client client( U( "https://api.prosper.com/" ), config );
// Build request URI and start the request.
uri_builder builder(U("/api/Listings/"));
return client.request( methods::GET, builder.to_string() );
})
...
Infelizmente, continuo recebendo o erro 401 - não autorizado. No entanto, posso acessar a página no navegador viahttps://username:[email protected]/api/Listings/
, e posso usar o Casablanca para acessar páginas da Web regulares que não precisam de autenticação.
Sou novo no REST e nas coisas da Web em geral, e a documentação é inútil -http_client_config
é "usado para definir as opções de configuração possíveis". Sem brincadeiras. Eu nem tenho certeza se estou usando as classes certas - essas coisas pareciam certas.
Como adiciono autenticação básica a uma solicitação http_client em Casablanca?