Google AppEngine - 拉队列 - 无法删除任务:"project name is invalid"
Google AppEngine - Pull Queue - Impossible to delete task: "project name is invalid"
我在 GAE 中创建了一个工作正常的拉取队列,我能够从应用程序添加元素并使用以下代码从我的实例中检索它们:
from apiclient.discovery import build
from oauth2client.client import GoogleCredentials
credentials = GoogleCredentials.get_application_default()
PROJECT_NAME = "my-project"
QUEUE_NAME = 'my-queue'
q = build('taskqueue', 'v1beta2', credentials=credentials)
l = q.tasks().lease(project=PROJECT_NAME, taskqueue=QUEUE_NAME, leaseSecs=600, numTasks=1)
result = l.execute()
task = result['items'][0]
task_id = task['id']
当我尝试在处理完任务后删除任务时出现问题,这段代码应该可以工作
d = q.tasks().delete(project=PROJECT_NAME, taskqueue=QUEUE_NAME, task=task_id)
d.execute()
return
File "/usr/local/lib/python2.7/dist-packages/oauth2client/util.py", line 137, in positional_wrapper
return wrapped(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/googleapiclient/http.py", line 838, in execute
raise HttpError(resp, content, uri=self.uri)
googleapiclient.errors.HttpError: <HttpError 400 when requesting
https://www.googleapis.com/taskqueue/v1beta2/projects/my-project/taskqueues/my-queue/tasks/46101672956060486431?
returned "project name is invalid">
我不明白这是怎么回事,因为我能够从队列中获取任务,但是当我想删除它时,出现了这个错误。
有人知道吗?
如果您的应用在北美,则应 "s~my-project"
;如果在欧洲,则应 "e~my-project"
。
我在 GAE 中创建了一个工作正常的拉取队列,我能够从应用程序添加元素并使用以下代码从我的实例中检索它们:
from apiclient.discovery import build
from oauth2client.client import GoogleCredentials
credentials = GoogleCredentials.get_application_default()
PROJECT_NAME = "my-project"
QUEUE_NAME = 'my-queue'
q = build('taskqueue', 'v1beta2', credentials=credentials)
l = q.tasks().lease(project=PROJECT_NAME, taskqueue=QUEUE_NAME, leaseSecs=600, numTasks=1)
result = l.execute()
task = result['items'][0]
task_id = task['id']
当我尝试在处理完任务后删除任务时出现问题,这段代码应该可以工作
d = q.tasks().delete(project=PROJECT_NAME, taskqueue=QUEUE_NAME, task=task_id)
d.execute()
return
File "/usr/local/lib/python2.7/dist-packages/oauth2client/util.py", line 137, in positional_wrapper
return wrapped(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/googleapiclient/http.py", line 838, in execute
raise HttpError(resp, content, uri=self.uri)
googleapiclient.errors.HttpError: <HttpError 400 when requesting
https://www.googleapis.com/taskqueue/v1beta2/projects/my-project/taskqueues/my-queue/tasks/46101672956060486431?
returned "project name is invalid">
我不明白这是怎么回事,因为我能够从队列中获取任务,但是当我想删除它时,出现了这个错误。
有人知道吗?
如果您的应用在北美,则应 "s~my-project"
;如果在欧洲,则应 "e~my-project"
。