2016-11-14 8 views
0

У меня есть сценарий, и это иногда вызывает 500 Internal Server Error. Я могу справиться с этими ошибками. Но какой статус использовать в ответ, когда это произойдет?Какой код состояния использовать?

Пример кода в Perl:

# catch error 
eval { 
    here is code which sometimes cause 500 
    .... 
    $response_body = handle_request(); 
} 

# Check if error occur 
if([email protected]) { 
    $response_body = 'Error was handled'; 
    # Should I change status from 500? 
    # If I should change. Which status I should use? 
    # 200 or something else? 
} 


return $response_body;  

ответ

1

Что вы имеете в виду, вы "обработаны" его? Вы полностью восстановились, и клиент получил свои запрошенные данные? Тогда это должно быть 200.

Вы только зарегистрировали исключение и предотвратили крах, но не получили полезных данных для отправки клиенту? 500 в этом случае.

+0

Какой из 5xx должен быть? –

+0

только 500, думаю –

+0

500 не очень удобный. Я должен различать обрабатываемые и не обрабатываемые. Я предполагаю, например, использовать 599. Но спросите, прежде чем захотите спросить совета. –

 Смежные вопросы

  • Нет связанных вопросов^_^