Menangkap error
Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
Menerapkan pengendali pengecualian kustom berdasarkan kode status HTTP yang ditampilkan oleh permintaan GET. Alur kerja menangkap kemungkinan pengecualian dan menampilkan pesan error yang telah ditentukan sebelumnya.
Mempelajari lebih lanjut
Untuk dokumentasi mendetail yang menyertakan contoh kode ini, lihat artikel berikut:
Contoh kode
Kecuali dinyatakan lain, konten di halaman ini dilisensikan berdasarkan Lisensi Creative Commons Attribution 4.0, sedangkan contoh kode dilisensikan berdasarkan Lisensi Apache 2.0. Untuk mengetahui informasi selengkapnya, lihat Kebijakan Situs Google Developers. Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Sulit dipahami","hardToUnderstand","thumb-down"],["Informasi atau kode contoh salah","incorrectInformationOrSampleCode","thumb-down"],["Informasi/contoh yang saya butuhkan tidak ada","missingTheInformationSamplesINeed","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Lainnya","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)."]]