使用回呼端點驗證翻譯要求
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
支援回呼端點,等待 HTTP 要求抵達該端點,稍後再繼續執行工作流程,藉此驗證翻譯要求。
深入探索
如需包含這個程式碼範例的詳細說明文件,請參閱下列內容:
程式碼範例
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["難以理解","hardToUnderstand","thumb-down"],["資訊或程式碼範例有誤","incorrectInformationOrSampleCode","thumb-down"],["缺少我需要的資訊/範例","missingTheInformationSamplesINeed","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],[],[],[],null,["# Validate a translation request using a callback endpoint\n\nValidates translation requests by supporting a callback endpoint that waits for HTTP requests to arrive at that endpoint, resuming the execution of the workflow at a later point in time.\n\nExplore further\n---------------\n\n\nFor detailed documentation that includes this code sample, see the following:\n\n- [Create a human-in-the-loop workflow using callbacks](/workflows/docs/tutorials/callbacks-firestore)\n\nCode sample\n-----------\n\n### YAML\n\n main:\n params: [translation_request]\n steps:\n - log_request:\n call: sys.log\n args:\n text: ${translation_request}\n - vars:\n assign:\n - exec_id: ${sys.get_env(\"GOOGLE_CLOUD_WORKFLOW_EXECUTION_ID\")}\n - text_to_translate: ${translation_request.text}\n - database_root: ${\"projects/\" + sys.get_env(\"GOOGLE_CLOUD_PROJECT_ID\") + \"/databases/(default)/documents/translations/\"}\n - log_translation_request:\n call: sys.log\n args:\n text: ${text_to_translate}\n\n - store_translation_request:\n call: googleapis.firestore.v1.projects.databases.documents.patch\n args:\n name: ${database_root + exec_id}\n updateMask:\n fieldPaths: ['text']\n body:\n fields:\n text:\n stringValue: ${text_to_translate}\n result: store_translation_request_result\n\n - translate:\n call: googleapis.translate.v2.translations.translate\n args:\n query:\n q: ${text_to_translate}\n target: \"FR\"\n format: \"text\"\n source: \"EN\"\n result: translation_result\n - assign_translation:\n assign:\n - translation: ${translation_result.data.translations[0].translatedText} \n - log_translation_result:\n call: sys.log\n args:\n text: ${translation}\n\n - store_translated_text:\n call: googleapis.firestore.v1.projects.databases.documents.patch\n args:\n name: ${database_root + exec_id}\n updateMask:\n fieldPaths: ['translation']\n body:\n fields:\n translation:\n stringValue: ${translation}\n result: store_translation_request_result \n\n - create_callback:\n call: events.create_callback_endpoint\n args:\n http_callback_method: \"POST\"\n result: callback_details\n - log_callback_details:\n call: sys.log\n args:\n text: ${callback_details}\n\n - store_callback_details:\n call: googleapis.firestore.v1.projects.databases.documents.patch\n args:\n name: ${database_root + exec_id}\n updateMask:\n fieldPaths: ['callback']\n body:\n fields:\n callback:\n stringValue: ${callback_details.url}\n result: store_callback_details_result\n\n - await_callback:\n call: events.await_callback\n args:\n callback: ${callback_details}\n timeout: 3600\n result: callback_request\n - assign_approval:\n assign:\n - approved: ${callback_request.http_request.body.approved}\n\n - store_approval:\n call: googleapis.firestore.v1.projects.databases.documents.patch\n args:\n name: ${database_root + exec_id}\n updateMask:\n fieldPaths: ['approved']\n body:\n fields:\n approved:\n booleanValue: ${approved}\n result: store_approval_result\n\n - return_outcome:\n return:\n text: ${text_to_translate}\n translation: ${translation}\n approved: ${approved}\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)."]]