使用libcurl来模仿卷曲

时间:2012-08-24 15:10:09

标签: curl libcurl

我试图使用libcurl模拟C程序中的以下行 -

curl -d "HelloWorld" http://testserver/messaging/topic

以上作品 - 我收到了我的信息。

基本上我想做的就是将一个简单的字符串发布到URL。我有这个(取自一个例子),但它只是给了我 -

JBossWeb / 2.0.1.GA - 错误报告

HTTP状态405 -

类型状态报告

消息

描述指定的H T 请求的资源()不允许使用TP方法。

JBossWeb / 2.0.1.GA

OUT

另外,我如何传递文字? - 将“?HelloWorld”附加到URL?

#include "curl/curl.h"
void main(int argc,char **argv)
{
fprintf(stderr, "IN\n");
    CURL *curl;
    CURLcode res;

    curl = curl_easy_init();
    if (curl) {
            curl_easy_setopt(curl, CURLOPT_URL, "http://testserver/messaging/topic/");
            res = curl_easy_perform(curl);
            if (res != CURLE_OK) {
                    fprintf(stderr, "failed %s\n", curl_easy_strerror(res));
            }
            curl_easy_cleanup(curl);
    }
fprintf(stderr, "OUT\n");
    exit(0);
}

2 个答案:

答案 0 :(得分:0)

将“--libcurl example.c”添加到命令行。然后将该代码构建到应用程序并运行它......

答案 1 :(得分:0)

-d意味着POST请求,因此您需要使用curl_easy_setopt

进行设置
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "HelloWorld");