从C ++中读取PHP的内容

时间:2012-02-25 13:03:50

标签: c++ http

我正在尝试使用C ++读取远程Web服务器上的PHP / HTML文件的内容,但还没有找到方法。我想将GET语句传递给它,所以http://example.com/login.php?user=abc&password=def。 我该怎么做?

1 个答案:

答案 0 :(得分:2)

您最好的选择是使用外部库。 libcurl很受欢迎且相当容易使用。

这是一个简单的例子,你需要添加错误检查:

string data;
CURL *curl = curl_easy_init();
curl_easy_setopt(curl, CURLOPT_URL, url_.c_str());
curl_easy_setopt(curl, CURLOPT_WRITEDATA, &data);
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, curlWrite);
curl_easy_perform(curl);

你的回调看起来像这样:

size_t curlWrite(void *ptr, size_t size, size_t nmemb, void *usrPtr)
{
    size_t bytes = size * nmemb;
    string *data = static_cast<string *>(usrPtr);
    data->append(static_cast<const char *>(ptr), bytes);
    return bytes;
}

您可以在网址末尾添加GET参数。