【发布时间】:2013-08-07 23:20:06
【问题描述】:
我已经成功实现了通道 api 来创建浏览器和应用引擎服务器之间的连接。 我想问从第二个客户端向第一个客户端发送消息的方式是什么。 我没有得到实际的算法。
【问题讨论】:
标签: google-app-engine message channel-api
我已经成功实现了通道 api 来创建浏览器和应用引擎服务器之间的连接。 我想问从第二个客户端向第一个客户端发送消息的方式是什么。 我没有得到实际的算法。
【问题讨论】:
标签: google-app-engine message channel-api
您用于创建与应用引擎服务器的连接的 client_id 是您向另一个 client_id 发送消息所需的。要么将其保存在数据存储中,要么可以通过其 ID 构建,但您仍然需要某种方式来了解其他 client_id 是什么,例如:
创建一个房间:
room = models.Room(user=user_id)
room.put()
token = channel.create_channel(room.key.id() + user_id)
其他人加入房间:
room = models.Room.query().get()
room.another_user = user_id
room.put()
token = channel.create_channel(room.key.id() + user_id)
然后在你的 js 上传递房间 id 和 token 以供参考以发送消息:
room = models.Room.get_by_id(room_id)
send_to = room.user if room.user != user_id else room.other_user
channel.send_message(room.key.id() + send_to, message)
请注意,每个样本上的 user_id 都是当前连接的用户。
【讨论】: