遇到未捕获的异常类型:Twilio \ Exceptions \ RestException

时间:2018-02-13 09:55:01

标签: codeigniter twilio

我正在使用Twilio消息服务的SDK,他们提供了验证电话/手机号码的功能,如果号码有效,它可以正常工作,但是给予

  

遇到未捕获的异常类型:   Twilio \例外\ RestException

如果number无效,在收到此错误后我的功能停止工作。我使用codeigniter调用其SDK函数,

请帮我解决这个错误。

public function verify($contact_no){
    $sid = "AccountSID";
    $token = "Token";
    $client = new Client($sid, $token);
    $encoded = rawurlencode("$contact_no");
    $number = $client->lookups
                     ->phoneNumbers($encoded)
                     ->fetch(
                       array("countryCode" => "US")
                    );
    if ($number->phoneNumber) {
        echo "True";
        $status = "valid";
     } else {
        echo "False";
        $status = 'invalid';
     }
     $data = array(
          "verify" => "$status"
     );
     $this->model->update_contact_verification($contact_no, $data);
}

1 个答案:

答案 0 :(得分:0)

Twilio开发者传道者在这里。

当数字未被识别为数字时,Lookup API返回404.PHP帮助程序库为此抛出RestException,因此您需要捕获错误。您应该将代码更新为以下内容:

public function verify($contact_no){
    $sid = "AccountSID";
    $token = "Token";
    $client = new Client($sid, $token);
    $encoded = rawurlencode("$contact_no");
    try {
        $number = $client->lookups
                      ->phoneNumbers($encoded)
                      ->fetch(
                        array("countryCode" => "US")
                      );
        echo $number->phoneNumber;
        $status = 'valid';
    } catch (Twilio\Exceptions\RestException $e) {
        echo "False";
        $status = 'invalid';
    }
    $data = array(
        "verify" => "$status"
    );
    $this->model->update_contact_verification($contact_no, $data);
}

让我知道这是否有帮助。