我有以下代码发送POST,但即使编译正确,我也会收到错误
fileExtensions = ["mp3","m4a","3gp","wav","webm","etc"...]
@audioFiles = fs.readdirSync(pathToMusic,"fileExtencions")
但是在尝试运行程序时出现以下错误
http_client client(U("http://l0.71.103.63:34568"));
json::value postData;
postData["name"] = json::value::string(U("Mohammad"));
http_response response = client.request(methods::POST,postData.to_string().c_str()).get();
if(response.status_code() == status_codes::OK)
{
auto body = response.extract_string();
std::wcout << L"Added new Id: " << body.get().c_str() << std::endl;
return std::stoi(body.get().c_str());
}
答案 0 :(得分:2)
我认为问题是你的IP地址。看起来你的IP地址错了?你有&#34; http://l0。&#34;其中&#34; 1 0&#34;是&#34; l 0&#34; (小写L)。
因此web:uri_exception。
答案 1 :(得分:0)
在你的请求中你错了(我认为),应该是这样的:
auto response = client.request(methods :: POST,U(“\”),postData).get();
请求中的第二个参数是URL补充,并且您将以字符串形式传递json,因此会出现错误。
基本上你想要的语法是one:
pplx :: task web :: http :: client :: http_client :: request( const方法&amp; mtd,const utility :: string_t&amp; path_query_fragment,const json :: value&amp; body_data,const pplx :: cancellation_token&amp; token = pplx :: cancellation_token :: none() )