在libcurl中查找请求地址
我有一个使用libcurl版本7.59的软件。我需要导出它使用的url并将其写入文本文件。Url由设置在libcurl中查找请求地址,c,url,libcurl,C,Url,Libcurl,我有一个使用libcurl版本7.59的软件。我需要导出它使用的url并将其写入文本文件。Url由设置 CURLcode curl_easy_setopt(struct Curl_easy *data, CURLoption tag, ...) 根据libcurl文档,参数类型为char*ad,其设置类似于curl\u easy\u setopt(curl,CURLOPT\u URL,”http://example.com"); libcurl中的参数类型是va_list arg 我在curl
CURLcode curl_easy_setopt(struct Curl_easy *data, CURLoption tag, ...)
根据libcurl文档,参数类型为char*ad,其设置类似于curl\u easy\u setopt(curl,CURLOPT\u URL,”http://example.com");代码>
libcurl中的参数类型是va_list arg
我在curl\u easy\u setopt中添加了代码
if (tag == CURLOPT_URL) {
FILE *f = fopen("file.txt", "a+");
if (f == NULL)
{
printf("Error opening file!\n");
exit(1);
}
int len = strlen(&arg);
for (int i = 0; i < len; i++) {
fprintf(f, "Some text: %c\n", &arg[i]);
}
fclose(f);
我知道我可以通过wireshark检查地址,但我需要这样做,因为我以后需要更改此地址。
旋度码
CURLcode curl_easy_setopt(struct Curl_easy *data, CURLoption tag, ...)
{
va_list arg;
CURLcode result;
if(!data)
return CURLE_BAD_FUNCTION_ARGUMENT;
va_start(arg, tag);
result = Curl_vsetopt(data, tag, arg);
va_end(arg);
return result;
}
&arg[i]
完全没有意义。这不是一个编码问题。fprintf(f,“某些文本:%c\n”,&arg[i])
无论arg
是与否,地址都不会用%c
格式说明符打印出来。fprintf(f,“整个字符串:%s\n”,&arg)也会给我一个无法读取的内容,因此无法将其写入文件?我已经更新了代码。我已经粘贴了libcurl的一部分。我只需要得到arg的值并将其保存到文本文件中。我自己做卷曲。
CURLcode curl_easy_setopt(struct Curl_easy *data, CURLoption tag, ...)
{
va_list arg;
CURLcode result;
if(!data)
return CURLE_BAD_FUNCTION_ARGUMENT;
va_start(arg, tag);
result = Curl_vsetopt(data, tag, arg);
va_end(arg);
return result;
}