int Post_EasyDL_Result(std::string &json_result, std::string &access_token) { char szBaseData[65535] = { 0 }; std::string strJsonData = "{\"image\":\"%s\",\"top_num\":5}"; //easydl接口的图片的base64不需要urlencode处理,请改成自己图片的base64数据 //图片可以用这个转换 https://tool.css-js.com/base64.html std::string strbase = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" sprintf_s(szBaseData, sizeof(szBaseData), strJsonData.c_str(),strbase.c_str()); CURL *curl; CURLcode result_code; int is_success; curl = curl_easy_init(); struct curl_slist *pheaders = NULL; struct curl_slist *pbody = NULL; pheaders = curl_slist_append(pheaders, "content-type: application/json;charset=UTF-8"); pbody = curl_slist_append(pbody, szBaseData); if (curl) { char szData[1024] = { 0 }; sprintf_s(szData, sizeof(szData), strEasyPostUrl.c_str(), access_token.c_str()); curl_easy_setopt(curl, CURLOPT_HTTPHEADER, pheaders); curl_easy_setopt(curl, CURLOPT_HTTPHEADER, pbody); curl_easy_setopt(curl, CURLOPT_URL, szData); //指定的带token的url curl_easy_setopt(curl, CURLOPT_HTTPPOST, 1L); curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);//设置为FALSE 禁止 cURL 验证对等证书 curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);// 设置为 1 是检查服务器SSL证书中是否存在一个公用名 curl_easy_setopt(curl, CURLOPT_POSTFIELDS, szBaseData); curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, Post_EasyDL_callback); result_code = curl_easy_perform(curl); if (result_code != CURLE_OK) { fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(result_code)); is_success = 1; return is_success; } json_result = strdetect_result;//这里就可以看到返回数据了 curl_easy_cleanup(curl); is_success = 0; } else { fprintf(stderr, "curl_easy_init() failed."); is_success = 1; } return is_success; } int main() { std::string strResultToken=""; Post_EasyDL_Result(strdetect_result, strResultToken);//strResultToken是你获取到的token }
请登录后评论
TOP
切换版块
这个例子 MFC可以调用么
您好,感谢您对百度AI的关注与支持,如有问题请联系我们,祝好。