遷移發送佇列時建立 App Engine 工作
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
將發送佇列程式碼從 App Engine 工作佇列遷移至 Cloud Tasks 時,建立 App Engine 工作。
深入探索
如需包含這個程式碼範例的詳細說明文件,請參閱下列內容:
程式碼範例
除非另有註明,否則本頁面中的內容是採用創用 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,["# Create App Engine tasks when migrating push queues\n\nCreates App Engine tasks when migrating push queue code from App Engine task queues to Cloud Tasks.\n\nExplore further\n---------------\n\n\nFor detailed documentation that includes this code sample, see the following:\n\n- [Migrating push queues to Cloud Tasks (Java)](/appengine/migration-center/standard/java/migrating-push-queues)\n\nCode sample\n-----------\n\n### Java\n\n\nTo learn how to install and use the client library for Cloud Tasks, see\n[Cloud Tasks client libraries](/tasks/docs/reference/libraries).\n\n\nTo authenticate to Cloud Tasks, set up Application Default Credentials.\nFor more information, see\n\n[Set up authentication for a local development environment](/docs/authentication/set-up-adc-local-dev-environment).\n\n import com.google.cloud.tasks.v2.https://cloud.google.com/java/docs/reference/google-cloud-tasks/latest/com.google.cloud.tasks.v2.AppEngineHttpRequest.html;\n import com.google.cloud.tasks.v2.https://cloud.google.com/java/docs/reference/google-cloud-tasks/latest/com.google.cloud.tasks.v2.CloudTasksClient.html;\n import com.google.cloud.tasks.v2.https://cloud.google.com/java/docs/reference/google-cloud-tasks/latest/com.google.cloud.tasks.v2.HttpMethod.html;\n import com.google.cloud.tasks.v2.https://cloud.google.com/java/docs/reference/google-cloud-tasks/latest/com.google.cloud.tasks.v2.QueueName.html;\n import com.google.cloud.tasks.v2.https://cloud.google.com/java/docs/reference/google-cloud-tasks/latest/com.google.cloud.tasks.v2.Task.html;\n import java.io.IOException;\n import javax.servlet.ServletException;\n import javax.servlet.annotation.WebServlet;\n import javax.servlet.http.HttpServlet;\n import javax.servlet.http.HttpServletRequest;\n import javax.servlet.http.HttpServletResponse;\n\n @WebServlet(\n name = \"TaskEnqueue\",\n description = \"Enqueue a task targeted at endpoint '/cloudtasks/worker'\",\n urlPatterns = \"/cloudtasks/enqueue\")\n public class Enqueue extends HttpServlet {\n\n // TODO(developer): Replace these variables before running the sample.\n static final String projectId = \"my-project-id\";\n static final String locationId = \"us-central1\";\n\n // Function creates Cloud Tasks from form submissions.\n protected void doPost(HttpServletRequest request, HttpServletResponse response)\n throws ServletException, IOException {\n String key = request.getParameter(\"key\");\n\n try (https://cloud.google.com/java/docs/reference/google-cloud-tasks/latest/com.google.cloud.tasks.v2.CloudTasksClient.html client = https://cloud.google.com/java/docs/reference/google-cloud-tasks/latest/com.google.cloud.tasks.v2.CloudTasksClient.html.create()) {\n // Construct the fully qualified queue name.\n String queueName = https://cloud.google.com/java/docs/reference/google-cloud-tasks/latest/com.google.cloud.tasks.v2.QueueName.html.of(projectId, locationId, \"default\").toString();\n\n // Construct the task body.\n https://cloud.google.com/java/docs/reference/google-cloud-tasks/latest/com.google.cloud.tasks.v2.Task.html task =\n https://cloud.google.com/java/docs/reference/google-cloud-tasks/latest/com.google.cloud.tasks.v2.Task.html.newBuilder()\n .https://cloud.google.com/java/docs/reference/google-cloud-tasks/latest/com.google.cloud.tasks.v2.Task.Builder.html#com_google_cloud_tasks_v2_Task_Builder_setAppEngineHttpRequest_com_google_cloud_tasks_v2_AppEngineHttpRequest_(\n https://cloud.google.com/java/docs/reference/google-cloud-tasks/latest/com.google.cloud.tasks.v2.AppEngineHttpRequest.html.newBuilder()\n .https://cloud.google.com/java/docs/reference/google-cloud-tasks/latest/com.google.cloud.tasks.v2.AppEngineHttpRequest.Builder.html#com_google_cloud_tasks_v2_AppEngineHttpRequest_Builder_setRelativeUri_java_lang_String_(\"/cloudtasks/worker?key=\" + key)\n .setHttpMethod(https://cloud.google.com/java/docs/reference/google-cloud-tasks/latest/com.google.cloud.tasks.v2.HttpMethod.html.POST)\n .build())\n .build();\n\n // Add the task to the default queue.\n https://cloud.google.com/java/docs/reference/google-cloud-tasks/latest/com.google.cloud.tasks.v2.Task.html taskResponse = client.createTask(queueName, task);\n System.out.println(\"Task created: \" + taskResponse.https://cloud.google.com/java/docs/reference/google-cloud-tasks/latest/com.google.cloud.tasks.v2.Task.html#com_google_cloud_tasks_v2_Task_getName__());\n }\n\n response.sendRedirect(\"/\");\n }\n }\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=cloud_tasks)."]]