当前位置:网站首页>libcurl返回curlcode说明
libcurl返回curlcode说明
2022-07-07 02:40:00 【努力努力学习中】
转自PHP CURL_ERRNO 77(示例代码)_136.la
libcurl错误代码
名称
libcurl-errors - libcurl中的错误代码
描述
此手册页包含libcurl中的大多数(如果不是全部)可用错误代码。它们为什么会发生,也可能包括解决问题的方法。
CURLcode
几乎所有“简单”接口函数都返回CURLcode错误代码。无论如何,使用curl_easy_setopt选项CURLOPT_ERRORBUFFER是一个好主意,因为它将为您提供一个人类可读的错误字符串,可以提供有关错误原因的更多详细信息,而不仅仅是错误代码。可以调用curl_easy_strerror从给定的CURLcode编号中获取错误字符串。
CURLcode是以下之一:
CURLE_OK(0)
一切都很好。像往常一样继续。
CURLE_UNSUPPORTED_PROTOCOL(1)
您传递给libcurl的URL使用了此libcurl不支持的协议。支持可能是您没有使用的编译时选项,它可能是拼写错误的协议字符串,或者只是libcurl没有代码的协议。
CURLE_FAILED_INIT(2)
很早的初始化代码失败了。这可能是内部错误或问题,或者是在初始时无法完成某些基本操作的资源问题。
CURLE_URL_MALFORMAT(3)
URL格式不正确。
CURLE_NOT_BUILT_IN(4)
由于构建时决定,未在此libcurl中找到所请求的功能,协议或选项。这意味着在构建libcurl时未启用或显式禁用某个功能或选项,并且为了使其正常运行,您必须获得重建的libcurl。
CURLE_COULDNT_RESOLVE_PROXY(5)
无法解析代理。无法解析给定的代理主机。
CURLE_COULDNT_RESOLVE_HOST(6)
无法解析主机。给定的远程主机未解析。
CURLE_COULDNT_CONNECT(7)
无法连接()到主机或代理。
CURLE_FTP_WEIRD_SERVER_REPLY(8)
服务器发送的数据libcurl无法解析。此错误代码不仅用于FTP,而且自7.51.0起别名为CURLE_WEIRD_SERVER_REPLY。
CURLE_REMOTE_ACCESS_DENIED(9)
我们被拒绝访问URL中给出的资源。对于FTP,尝试更改到远程目录时会发生这种情况。
CURLE_FTP_ACCEPT_FAILED(10)
在使用活动FTP会话时等待服务器连接回来时,通过控制连接或类似方式发送错误代码。
CURLE_FTP_WEIRD_PASS_REPLY(11)
在将FTP密码发送到服务器之后,libcurl希望得到适当的回复。此错误代码表示返回了意外的代码。
CURLE_FTP_ACCEPT_TIMEOUT(12)
在等待服务器连接的活动FTP会话期间,CURLOPT_ACCEPTTIMEOUT_MS(或内部默认值)超时已到期。
CURLE_FTP_WEIRD_PASV_REPLY(13)
libcurl无法从服务器获得合理的结果作为对PASV或EPSV命令的响应。服务器存在缺陷。
CURLE_FTP_WEIRD_227_FORMAT(14)
FTP服务器返回227行作为对PASV命令的响应。如果libcurl无法解析该行,则返回此返回码。
CURLE_FTP_CANT_GET_HOST(15)
查找用于新连接的主机的内部故障。
CURLE_HTTP2(16)
在HTTP2框架层中检测到问题。这有些通用,可能是几个问题中的一个,请参阅错误缓冲区了解详细信息。
CURLE_FTP_COULDNT_SET_TYPE(17)
尝试将传输模式设置为二进制或ASCII时收到错误。
CURLE_PARTIAL_FILE(18)
文件传输比预期的更短或更长。当服务器首次报告预期的传输大小,然后传递与先前给定大小不匹配的数据时,会发生这种情况。
CURLE_FTP_COULDNT_RETR_FILE(19)
这可能是对‘RETR‘命令的奇怪回复,也可能是零字节传输完成。
CURLE_QUOTE_ERROR(21)
向远程服务器发送自定义“QUOTE”命令时,其中一个命令返回的错误代码为400或更高(对于FTP)或以其他方式表示命令未成功完成。
CURLE_HTTP_RETURNED_ERROR(22)
如果CURLOPT_FAILONERROR设置为TRUE且HTTP服务器返回> = 400的错误代码,则返回此值。
CURLE_WRITE_ERROR(23)
将接收的数据写入本地文件时发生错误,或者从写回调将错误返回到libcurl。
CURLE_UPLOAD_FAILED(25)
启动上传失败。对于FTP,服务器通常拒绝STOR命令。错误缓冲区通常包含服务器对此的解释。
CURLE_READ_ERROR(26)
读取本地文件或读取回调返回的错误时出现问题。
CURLE_OUT_OF_MEMORY(27)
内存分配请求失败。这是严重的坏事,如果发生这种情况,事情就会严重搞乱。
CURLE_OPERATION_TIMEDOUT(28)
操作超时。根据条件达到规定的超时时间。
CURLE_FTP_PORT_FAILED(30)
FTP PORT命令返回错误。当您没有为libcurl指定足够好的地址时,这通常会发生。请参见CURLOPT_FTPPORT。
CURLE_FTP_COULDNT_USE_REST(31)
FTP REST命令返回错误。如果服务器是理智的,这应该永远不会发生。
CURLE_RANGE_ERROR(33)
服务器不支持或接受范围请求。
CURLE_HTTP_POST_ERROR(34)
这是一个奇怪的错误,主要是由于内部混乱造成的。
CURLE_SSL_CONNECT_ERROR(35)
SSL / TLS握手中出现问题。你真的想要错误缓冲区并在那里阅读消息,因为它会稍微查明问题。可以是证书(文件格式,路径,权限),密码等。
CURLE_BAD_DOWNLOAD_RESUME(36)
无法恢复下载,因为指定的偏移量超出了文件边界。
CURLE_FILE_COULDNT_READ_FILE(37)
无法打开以FILE://指定的文件。很可能是因为文件路径无法识别现有文件。你检查过文件权限了吗?
CURLE_LDAP_CANNOT_BIND(38)
LDAP无法绑定。LDAP绑定操作失败。
CURLE_LDAP_SEARCH_FAILED(39)
LDAP搜索失败。
CURLE_FUNCTION_NOT_FOUND(41)
找不到功能。找不到所需的zlib函数。
CURLE_ABORTED_BY_CALLBACK(42)
被回调中止。回调“abort”返回libcurl。
CURLE_BAD_FUNCTION_ARGUMENT(43)
内部错误。使用错误参数调用函数。
CURLE_INTERFACE_FAILED(45)
接口错误。无法使用指定的传出接口。使用CURLOPT_INTERFACE设置用于传出连接的源IP地址的接口。
CURLE_TOO_MANY_REDIRECTS(47)
重定向太多。在执行重定向后,libcurl会达到最大值。使用CURLOPT_MAXREDIRS设置限制。
CURLE_UNKNOWN_OPTION(48)
传递给libcurl的选项无法识别/已知。请参阅相应的文档。这很可能是使用libcurl的程序中的一个问题。错误缓冲区可能包含有关其所涉及的确切选项的更具体信息。
CURLE_TELNET_OPTION_SYNTAX(49)
telnet选项字符串是非法格式化的。
CURLE_GOT_NOTHING(52)
没有从服务器返回任何内容,在这种情况下,什么都没有被认为是错误。
CURLE_SSL_ENGINE_NOTFOUND(53)
找不到指定的加密引擎。
CURLE_SSL_ENGINE_SETFAILED(54)
将所选SSL加密引擎设置为默认值失败!
CURLE_SEND_ERROR(55)
发送网络数据失败。
CURLE_RECV_ERROR(56)
接收网络数据失败。
CURLE_SSL_CERTPROBLEM(58)
本地客户端证书的问题。
CURLE_SSL_CIPHER(59)
无法使用指定的密码。
CURLE_PEER_FAILED_VERIFICATION(60)
远程服务器的SSL证书或SSH md5指纹被认为不正常。自7.62.0起,此错误代码已与CURLE_SSL_CACERT统一。它之前的价值是51。
CURLE_BAD_CONTENT_ENCODING(61)
无法识别的传输编码。
CURLE_LDAP_INVALID_URL(62)
无效的LDAP URL。
CURLE_FILESIZE_EXCEEDED(63)
超出最大文件大小。
CURLE_USE_SSL_FAILED(64)
请求的FTP SSL级别失败。
CURLE_SEND_FAIL_REWIND(65)
在执行发送操作时,curl必须回滚数据以重新传输,但是倒带操作失败。
CURLE_SSL_ENGINE_INITFAILED(66)
启动SSL引擎失败。
CURLE_LOGIN_DENIED(67)
远程服务器拒绝curl登录(在7.13.1中添加)
CURLE_TFTP_NOTFOUND(68)
在TFTP服务器上找不到文件。
CURLE_TFTP_PERM(69)
TFTP服务器上的权限问题。
CURLE_REMOTE_DISK_FULL(70)
服务器上的磁盘空间不足。
CURLE_TFTP_ILLEGAL(71)
非法的TFTP操作。
CURLE_TFTP_UNKNOWNID(72)
未知的TFTP传输ID。
CURLE_REMOTE_FILE_EXISTS(73)
文件已存在且不会被覆盖。
CURLE_TFTP_NOSUCHUSER(74)
正常运行的TFTP服务器永远不应该返回此错误。
CURLE_CONV_FAILED(75)
字符转换失败。
CURLE_CONV_REQD(76)
呼叫者必须注册转换回调。
CURLE_SSL_CACERT_BADFILE(77)
读取SSL CA证书时出现问题(路径?访问权限?)
CURLE_REMOTE_FILE_NOT_FOUND(78)
URL中引用的资源不存在。
CURLE_SSH(79)
SSH会话期间发生了未指定的错误。
CURLE_SSL_SHUTDOWN_FAILED(80)
无法关闭SSL连接。
CURLE_AGAIN(81)
套接字尚未准备好发送/接收等待,直到它准备好再试一次。此返回码仅从curl_easy_recv和curl_easy_send返回(在7.18.2中添加)
CURLE_SSL_CRL_BADFILE(82)
无法加载CRL文件(在7.19.0中添加)
CURLE_SSL_ISSUER_ERROR(83)
发行人检查失败(在7.19.0中添加)
CURLE_FTP_PRET_FAILED(84)
FTP服务器根本不理解PRET命令或不支持给定的参数。使用CURLOPT_CUSTOMREQUEST时要小心,在PASV之前也会使用PRET CMD发送自定义LIST命令。(在7.20.0中添加)
CURLE_RTSP_CSEQ_ERROR(85)
RTSP CSeq号码不匹配。
CURLE_RTSP_SESSION_ERROR(86)
RTSP会话标识符不匹配。
CURLE_FTP_BAD_FILE_LIST(87)
无法解析FTP文件列表(在FTP通配符下载期间)。
CURLE_CHUNK_FAILED(88)
块回调报告错误。
CURLE_NO_CONNECTION_AVAILABLE(89)
(仅供内部使用,libcurl永远不会返回)没有可用的连接,会话将排队。(在7.30.0中添加)
CURLE_SSL_PINNEDPUBKEYNOTMATCH(90)
无法匹配CURLOPT_PINNEDPUBLICKEY指定的固定密钥。
CURLE_SSL_INVALIDCERTSTATUS(91)
当询问CURLOPT_SSL_VERIFYSTATUS时,状态返回失败。
CURLE_HTTP2_STREAM(92)
HTTP / 2成帧层中的流错误。
CURLE_RECURSIVE_API_CALL(93)
从回调内部调用API函数。
CURLE_OBSOLETE *
永远不会返回这些错误代码。它们在旧的libcurl版本中使用,目前尚未使用。
CURLMcode
这是libcurl多接口中函数使用的通用返回码。还要考虑curl_multi_strerror。
CURLM_CALL_MULTI_PERFORM(-1)
这不是一个真正的错误。这意味着您应该再次调用curl_multi_perform,而不要在其间执行select()或类似操作。在版本7.20.0之前,这可以通过curl_multi_perform返回,但在以后的版本中,此返回代码从不使用。
CURLM_OK(0)
事情很好。
CURLM_BAD_HANDLE(1)
传入的句柄不是有效的CURLM句柄。
CURLM_BAD_EASY_HANDLE(2)
容易处理不好/有效。这可能意味着它根本不是一个简单的手柄,或者可能是手柄已被这个或另一个多手柄使用。
CURLM_OUT_OF_MEMORY(3)
你注定要失败。
CURLM_INTERNAL_ERROR(4)
这只能在libcurl错误时返回。请向我们报告!
CURLM_BAD_SOCKET(5)
传入的套接字不是libcurl已经知道的有效套接字。(在7.15.4中添加)
CURLM_UNKNOWN_OPTION(6)
curl_multi_setopt()带有不支持的选项(在7.15.4中添加)
CURLM_ADDED_ALREADY(7)
已尝试添加到多手柄的简易手柄第二次添加。(在7.32.1中添加)
CURLM_RECURSIVE_API_CALL(8)
从回调内部调用API函数。
CURLSHcode
“share”接口将返回CURLSHcode以指示何时发生错误。还要考虑curl_share_strerror。
CURLSHE_OK(0)
一切都很好。像往常一样继续。
CURLSHE_BAD_OPTION(1)
传递给函数的选项无效。
CURLSHE_IN_USE(2)
共享对象当前正在使用中。
CURLSHE_INVALID(3)
无效的共享对象已传递给该函数。
CURLSHE_NOMEM(4)
没有足够的内存可用。(在7.12.0中添加)
CURLSHE_NOT_BUILT_IN(5)
无法执行请求的共享,因为您使用的库未启用该特定功能。(在7.23.0中添加)
CURLUcode
CURLUE_BAD_HANDLE(1)
应该是CURLU指针的参数作为NULL传入。
CURLUE_BAD_PARTPOINTER(2)
NULL指针被传递给curl_url_get的‘part‘参数。
CURLUE_MALFORMED_INPUT(3)
格式错误的输入传递给URL API函数。
CURLUE_BAD_PORT_NUMBER(4)
端口号不是0到65535之间的十进制数。
CURLUE_UNSUPPORTED_SCHEME(5)
此libcurl构建不支持给定的URL方案。
CURLUE_URLDECODE(6)
URL解码错误,很可能是因为输入中有垃圾。
CURLUE_OUT_OF_MEMORY(7)
记忆功能失败。
CURLUE_USER_NOT_ALLOWED(8)
禁止时,凭据在URL中传递。
CURLUE_UNKNOWN_PART(9)
未知的部件ID已传递给URL API函数。
CURLUE_NO_SCHEME(10)
URL中没有方案部分。
CURLUE_NO_USER(11)
URL中没有用户部分。
CURLUE_NO_PASSWORD(12)
URL中没有密码部分。
CURLUE_NO_OPTIONS(13)
URL中没有选项部分。
CURLUE_NO_HOST(14)
URL中没有主机部分。
CURLUE_NO_PORT(15)
URL中没有端口部分。
CURLUE_NO_QUERY(16)
URL中没有查询部分。
CURLUE_NO_FRAGMENT(17)
URL中没有片段部分
边栏推荐
猜你喜欢
随机推荐
多个kubernetes集群如何实现共享同一个存储
Postgresql源码(59)分析事务ID分配、溢出判断方法
VIM mapping large K
肿瘤免疫治疗研究丨ProSci LAG3抗体解决方案
Abnova循环肿瘤DNA丨全血分离,基因组DNA萃取分析
Common problems of caching in high concurrency scenarios
Answer to the first stage of the assignment of "information security management and evaluation" of the higher vocational group of the 2018 Jiangsu Vocational College skills competition
Prompt for channel security on the super-v / device defender side when installing vmmare
MYSQL----导入导出&视图&索引&执行计划
Leite smart home longhaiqi: from professional dimming to full house intelligence, 20 years of focus on professional achievements
2022/07/04学习记录
dolphinscheduler3. X local startup
C interview encryption program: input plaintext by keyboard, convert it into ciphertext through encryption program and output it to the screen.
使用TCP/IP四层模型进行网络传输的基本流程
Shared memory for interprocess communication
[shell] summary of common shell commands and test judgment statements
Programmers' daily | daily anecdotes
How to solve sqlstate[hy000]: General error: 1364 field 'xxxxx' doesn't have a default value error
Install mongodb database
JWT certification