最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

php接口超时如何处理

来源:动视网 责编:小采 时间:2020-11-27 15:21:01
文档

php接口超时如何处理

php接口超时如何处理:一般我们访问HTTP方式很多,主要是:curl, socket, file_get_contents() 等方法。如果碰到对方服务器一直没有响应的时候,我们就悲剧了,很容易把整个服务器搞死,所以在访问http的时候也需要考虑超时的问题。[ CURL 访问HTTP]CURL 是我们常用
推荐度:
导读php接口超时如何处理:一般我们访问HTTP方式很多,主要是:curl, socket, file_get_contents() 等方法。如果碰到对方服务器一直没有响应的时候,我们就悲剧了,很容易把整个服务器搞死,所以在访问http的时候也需要考虑超时的问题。[ CURL 访问HTTP]CURL 是我们常用
 一般我们访问HTTP方式很多,主要是:curl, socket, file_get_contents() 等方法。

如果碰到对方服务器一直没有响应的时候,我们就悲剧了,很容易把整个服务器搞死,所以在访问http的时候也需要考虑超时的问题。

[ CURL 访问HTTP]

CURL 是我们常用的一种比较靠谱的访问HTTP协议接口的lib库,性能高,还有一些并发支持的功能等。(推荐学习:PHP编程从入门到精通)

还是让我们使用 cURL 扩展来处理超时控制吧

假如你想更精确的处理超时,就使用 cURL 扩展,它可以设置连接超时和读取超时(CURLOPT_TIMEOUTCURLOPT_CONNECTTIMEOUT)。

假如希望控制 HTTP 接口必须在毫秒级别返回,还可以使用 CURLOPT_TIMEOUT_MS and CURLOPT_CONNECTTIMEOUT_M 常量。

注意假如使用这两个常量,必须设置 curl_setopt($ch, CURLOPT_NOSIGNAL, 1);

神奇的来了,cURL 扩展机制很特别,在指定的读取时间获取到多少数据就返回多少,然后调用也终止,程序并不报错

通过代码看一下:

function e_curl() {
 global $url;
 $ch = curl_init($url);
 curl_setopt($ch, CURLOPT_NOSIGNAL, 1);
 curl_setopt($ch, CURLOPT_TIMEOUT, 3);
 curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 1);
 $response = curl_exec($ch);
 if ($response === false) {
 $info = curl_getinfo($ch);
 if ($info['http_code'] === 0) {
 return false;
 }
 }
 return true;}e_curl();

文档

php接口超时如何处理

php接口超时如何处理:一般我们访问HTTP方式很多,主要是:curl, socket, file_get_contents() 等方法。如果碰到对方服务器一直没有响应的时候,我们就悲剧了,很容易把整个服务器搞死,所以在访问http的时候也需要考虑超时的问题。[ CURL 访问HTTP]CURL 是我们常用
推荐度:
标签: 处理 解决 php
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top