La clase Zend_Gdata_App_Exception es una clase base
para las excepciones lanzadas por Zend_Gdata. Puede capturar cualquier excepción
lanzada por Zend_Gdata capturando
Zend_Gdata_App_Exception.
try {
$client =
Zend_Gdata_ClientLogin::getHttpClient($username, $password);
} catch(Zend_Gdata_App_Exception $ex) {
// Report the exception to the user
die($ex->getMessage());
}
Las siguientes subclases de excepción son usadas por Zend_Gdata:
Zend_Gdata_App_AuthExceptionindica que las credenciales de la cuenta del usuario no eran válidas.Zend_Gdata_App_BadMethodCallExceptionindica que se llamó a un método para un servicio que no soporta dicho método. Por ejemplo, el servicio CodeSearch no soportapost().Zend_Gdata_App_HttpExceptionindica que una petición HTTP no tuvo éxito. Proporciona la capacidad de obtener el objetoZend_Http_Responsecompleto para determinar la causa exacta del fallo en los casos en que $e->getMessage() no proporciona suficientes detalles.Zend_Gdata_App_InvalidArgumentExceptionse lanza cuando la aplicación proporciona un valor que no es válido en un contexto determinado. Por ejemplo, especificar un valor de visibilidad de Calendar de "banana", o consultar un feed de Blogger sin especificar ningún nombre de blog.Zend_Gdata_App_CaptchaRequiredExceptionse lanza cuando un intento de ClientLogin recibe un desafío CAPTCHA™ del servicio de autenticación. Esta excepción contiene un ID de token y una URL a una imagen de desafío CAPTCHA™. La imagen es un rompecabezas visual que debería mostrarse al usuario. Después de recopilar la respuesta del usuario a la imagen de desafío, la respuesta puede incluirse en el siguiente intento de ClientLogin. Alternativamente, se puede dirigir al usuario a este sitio web: https://www.google.com/accounts/DisplayUnlockCaptcha Puede encontrarse más información en la documentación de ClientLogin.
Puede usar estas subclases de excepción para manejar excepciones específicas
de forma diferente. Consulte la documentación de la API para obtener información sobre qué
subclases de excepción son lanzadas por qué métodos en Zend_Gdata.
try {
$client = Zend_Gdata_ClientLogin::getHttpClient($username,
$password,
$service);
} catch(Zend_Gdata_App_AuthException $authEx) {
// The user's credentials were incorrect.
// It would be appropriate to give the user a second try.
...
} catch(Zend_Gdata_App_HttpException $httpEx) {
// Google Data servers cannot be contacted.
die($httpEx->getMessage);}