我无法使用 libcurl 获取 http 代码 404

I can't get http code 404 with libcurl

本文关键字:获取 http 代码 libcurl      更新时间:2023-10-16

当我使用错误的服务器地址(如127.0.0.1)作为URL的服务器地址发送http请求时,libcurl会返回CURLE_OK并获得http代码0。然而,当我用IE发送相同的请求时,我会得到http代码404。有人知道在发送这样的请求时如何用libcurl得到错误代码而不是0吗。

当传输顺利时,libcurl返回CURLE_OK。从HTTP服务器获得404被认为是一种很好的传输。通过设置CURLOPT_FAILONERROR选项,可以使>=4xx HTTP响应代码导致libcurl错误。

或者,这可能是更好的方法,您可以在传输后提取HTTP响应代码,例如curl_easy_getinfo()来计算HTTP响应代码以查看HTTP服务器对您请求的资源的看法。

尝试使用它访问实际运行web服务器的网站,并尝试检索不存在的文件。例如http://www.google.com/404.你的浏览器几乎肯定不会因为访问127.0.0.1而得到404,即使它告诉你它就是这样。