【问题标题】:HTTP POST with libsoup带有 libsoup 的 HTTP POST
【发布时间】:2012-04-17 02:20:54
【问题描述】:

我想使用 libsoup 执行一个简单的 POST 请求。我想向其发送数据的网站的 API 只需要一个名为“内容”的字段。使用 curl 我这样做:

curl -si -F 'content=mycontent' http://mywebsite.org/api 

如何使用 libsoup 做同样的事情?

【问题讨论】:

    标签: c post curl


    【解决方案1】:

    Google 可能比我更适合您。这是 libsoup 客户端基础知识的链接。 http://developer.gnome.org/libsoup/stable/libsoup-client-howto.html

    从那里你应该尝试类似于

    guint status;
    SoupMessage *msg;
    const char * mycontent; //alloc and fill this with your data
    msg = soup_message_new ("POST", "http://example.com/form.cgi");
    soup_message_set_request (msg, "whatever content type here",
              SOUP_MEMORY_COPY, mycontent, strlen (mycontent));
    status = soup_session_send_message (session, msg);
    //error handling etc
    

    【讨论】:

    • 是的,我知道这个例子,但我正在寻找可以与 curl 选项 -i (其中包括输出中的 HTTP 标头)相同的东西
    • @En_t8 如果你碰巧错过了它,那么有函数 soup_message_headers_get_one (msg->response_headers,const char* header_name) 但没有办法像 curl 的 -i 选项那样在一次调用中获取标题。
    猜你喜欢
    • 1970-01-01
    • 2017-12-08
    • 2011-08-27
    • 1970-01-01
    • 2016-03-12
    • 1970-01-01
    • 2012-05-20
    • 2012-02-23
    相关资源
    最近更新 更多