Google AppEngine - Pull Queue - Невозможно удалить задачу: "имя проекта неверно"
Я создал очередь извлечения в 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()
вернуть
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">
Я не понимаю, что не так, потому что я могу получить задачу из очереди, но когда я хочу удалить ее, возникает эта ошибка.
У кого-нибудь есть понимание?
1 ответ
Решение
Должно быть "s~my-project"
если ваше приложение находится в Северной Америке, или "e~my-project"
если в европе.