Detectar erros
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Implementa um gerenciador de exceções personalizado com base no código de status HTTP retornado por uma solicitação GET. O fluxo de trabalho captura uma possível exceção e retorna uma mensagem de erro pré-definida.
Mais informações
Para ver a documentação detalhada que inclui este exemplo de código, consulte:
Exemplo de código
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],[],[],[],null,["# Catch errors\n\nImplements a custom exception handler based on the HTTP status code returned by a GET request. The workflow catches a potential exception and returns a predefined error message.\n\nExplore further\n---------------\n\n\nFor detailed documentation that includes this code sample, see the following:\n\n- [Catch errors](/workflows/docs/reference/syntax/catching-errors)\n- [Make an HTTP request](/workflows/docs/http-requests)\n\nCode sample\n-----------\n\n### YAML\n\n # Use a custom exception handler to catch exceptions and return predefined\n # error messages; if the exception isn't recognized, the workflow\n # execution fails and throws the exception returned by the GET request\n - read_item:\n try:\n call: http.get\n args:\n url: https://example.com/someapi\n auth:\n type: OIDC\n result: API_response\n except:\n as: e\n steps:\n - known_errors:\n switch:\n - condition: ${not(\"HttpError\" in e.tags)}\n next: connection_problem\n - condition: ${e.code == 404}\n next: url_not_found\n - condition: ${e.code == 403}\n next: auth_problem\n - unhandled_exception:\n raise: ${e}\n - url_found:\n return: ${API_response.body}\n - connection_problem:\n return: \"Connection problem; check URL\"\n - url_not_found:\n return: \"Sorry, URL wasn't found\"\n - auth_problem:\n return: \"Authentication error\"\n\nWhat's next\n-----------\n\n\nTo search and filter code samples for other Google Cloud products, see the\n[Google Cloud sample browser](/docs/samples?product=workflows)."]]