2015-08-08 5 views
2

В настоящее время я работаю с API yodlee. Как указано в documentation, ответ URL может вызывать InvalidCredentails или UserAccountLocked. Я использую PHP, и я получаю следующий ответ, когда имя пользователя или пароль неверны.catch исключений из yodlee api

{ 
    Error: [ 
    { 
     errorDetail: "Invalid Cobrand Credentials" 
    } 
    ] 
} 

Таким образом, чтобы проверить, если происходит ошибка, я хочу, чтобы написать код, который проверяет, если errorDetail имеет значение Invalid Cobrand Credentials.
Пока все нормально.

Но может быть так много типов ошибок, и каждое имя ошибки отличается. Мой вопрос: могу ли я получить список этих значений errorDetail , чтобы я мог заставить его работать, не проверяя, принудительно ли он перебрасывает ошибки.

+0

Вам нужно будет дополнительно обратиться к документации по API, если вы хотите получить список доступных сообщений об ошибках (это будет не по теме). Догадайтесь, что нет фиксированного списка, когда они просто отправляют читаемый текст. Поэтому используйте стандартное исключение и 'errorDetail' в качестве своего сообщения. – mario

ответ

0

Вы можете просто проверить индекс Error и получить доступ к его значению для выброса ошибок. Что-то вроде этого должно работать для вас (не проверено). На странице репо:

yodleeAPI.getAccounts(accessToken) 
    .then(function(response) {}) 
    .catch(function(error) {}); 

Edit:
Насколько я мог сказать, что не было никакого списка исключений. Таким образом, вам придется либо вручную пройти все исключения, либо создать общее сообщение об ошибке для пользователей. Я бы просто советовал поймать сообщение об исключении и использовать его для представления пользователя (если там нет никакой информации о безопасности). Вы можете выполнить это, выполнив приведенный выше код. Если вам действительно нужно пройти все исключения, мне удалось как минимум получить список всех методов, которые генерируют исключения (search: exception). Вам придется пройти через это самостоятельно и самостоятельно разобрать сообщение об ошибке. Но вы можете обнаружить, что here

+0

Спасибо за ответ @Bono, как вы сказали, я напишу исключение с сообщением, возвращенным yodlee api, чтобы поймать это исключение, также я хочу написать код, где я хочу проверить сообщение со строкой, например 'Invalid Cobrand «Учетные данные», чтобы я мог визуализировать представление для пользователя так и так, анализируя сообщение об исключении, любое, где я хочу написать код для различного типа исключения. на самом деле мои вопросы содержат список строк исключений, таких как 'Invalid Cobrand Exception'. –

+0

@PavanKumar Я обновил ответ. К сожалению, я не думаю, что есть список, который вы ищете. – Bono