如何将推送队列中后端创建的通道API令牌发送到Python的前端?

时间:2012-12-13 01:56:25

标签: python google-app-engine backend channel-api

我正在尝试将GAE python后端推送队列中的Channel API消息发送到客户端。 this question的答案表示必须在后端进程中创建通道,以便能够从后端向客户端发送消息。答案表明

  

“但是,您可以在后端实现一个servlet,该servlet调用createChannel并将其返回到您的前端,以包含在您的前端呈现的javascript中。”

我的问题是:如何将后端创建的令牌放在前端的推送队列中,以便我可以将令牌发送给客户端?我使用以下命令创建后端推送队列:

taskqueue.Task(url='/flow/', params = {'json_request': json_request}, target='flowbackend').add(queue_name='flow-queue')

我无法弄清楚如何轻松地将信息发送回前端。

1 个答案:

答案 0 :(得分:1)

您希望在后端创建频道有点奇怪。 最明显的方法是将其存储在数据存储区中的某个位置,并且具有一个单独的URL,您的HTTP客户端可以轮询该URL以获取令牌。

如果可以,我建议在排队任务之前在GAE前端创建频道,然后将令牌与任务一起发送,并将令牌嵌入到客户端的HTTP响应中,然后是客户端和后端可以沟通。