为了账号安全,请及时绑定邮箱和手机立即绑定

如何跳过http状态为404或401的图像?

如何跳过http状态为404或401的图像?

PHP
白猪掌柜的 2021-10-08 21:23:37
我正在尝试将图像从 Dropbox 保存到我的服务器。我已经为此编写了代码。在使用代码下载图像之前,我还在检查 url 的 HTTP 状态。我得到了正确的状态,但问题是它总是抛出错误 401,即使我已经设置了下载状态代码为 200 或 302 的图像的条件。我在我正在用 laravel 阅读的 excel 文件中有图像的链接包裹。请帮我。图像状态检查功能public static function CheckLinkStatus($image){        $ch = curl_init($image);        curl_setopt($ch, CURLOPT_NOBODY, true);        curl_exec($ch);        $retcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);        curl_close($ch);        return $retcode;}
查看完整描述

2 回答

?
GCT1015

TA贡献1827条经验 获得超4个赞

尝试这个:


$ch = curl_init($image);

curl_setopt($ch,  CURLOPT_RETURNTRANSFER, TRUE);


$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);



if($httpCode != 404) //# if error code is not "404"

{

    /* Your Function here. */

}

else 

{

    /* Handle 404 here. */

}


查看完整回答
反对 回复 2021-10-08
?
宝慕林4294392

TA贡献2021条经验 获得超8个赞

尝试设置一组 http 代码,例如:


$httpCodes = [401,404];

而不仅仅是检查:


  if(!in_array(CheckLinkStatus($image),$httpCodes){

        // YOur logic

    }   else {

        // Handle 401 && 404

    }


查看完整回答
反对 回复 2021-10-08
  • 2 回答
  • 0 关注
  • 167 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信