我正在尝试修改Casablanca 教程以包含基本的 HTTP 身份验证以访问Prosper API:
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() );
})
...
不幸的是,我不断收到错误 401 - 未经授权。但是,我可以通过 访问浏览器中的页面https://username:password@api.prosper.com/api/Listings/
,并且可以使用 Casablanca 访问不需要身份验证的常规网页。
一般来说,我是 REST 和网络的新手,文档没用 - http_client_config
“用于设置可能的配置选项”。不开玩笑。我什至不确定我是否使用了正确的课程——这些东西看起来是对的。
如何在 Casablanca 中向 http_client 请求添加基本身份验证?