-
Notifications
You must be signed in to change notification settings - Fork 86
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Invite or Join? #58
Comments
join 是添加自己。同时有一个 add 方法,相当于你说的 invite。 |
那为什么roomObj.join向后台sign接口发出的请求,带的action是invite而不是join呢 |
这个涉及到底层实现,SDK 层面暴露的是一个更加语义化的,包装之后的概念。 |
这个奇怪的现象将直接影响后端sign的内部实现。 |
可以说下具体问题,而不是对于这个问题的讨论。 |
如果roomObj.join向后台sign请求时发送的action是invite,那后端sign接口也就相应的需要用invite相关的接口来处理。在demo中可能大家会将不同action的sign实现放在一个函数里,但是真正写业务的时候,我是分开处理的,比如某些用户是可以join某个group的,某些用户是可以kick用户的。 sign接口,在后端实现里会分发到signJoin、signInvite、signKick等等一系列函数当中。 如果roomObj.join向后台sign请求时发送的action是invite,那signJoin这个函数其实就没有用处了?这样的实现不是很别扭吗。 |
来个实例,更清楚一些: function handleGroupActions(client_id, conv_id, member_ids, action, request, response) {
switch(action) {
case 'open':
handleGroupOpen(client_id, conv_id, member_ids, request, response);
break;
case 'kick':
handleGroupKick(client_id, conv_id, member_ids, request, response);
break;
// oops,好像没有任何行为会进入join了
case 'join':
handleGroupJoin(client_id, conv_id, request, response);
break;
// 虽然这里是invite,但是join语义却最终被分发到了invite当中
case 'invite':
handleGroupInvite(client_id, conv_id, member_ids, request, response);
break;
} } |
@liuyanghejerry 这里 我们的官方文档关于这块的说明有点小问题,我已经发了一个 PR 修改了。 |
感谢澄清和修正文档,如果方便的话顺便再修正一下文档,文档中 https://leancloud.cn/docs/js_realtime.html#权限和认证 中指向的详情文档实际应为 https://leancloud.cn/docs/realtime_v2.html#权限和认证 ,而不是目前的 https://leancloud.cn/docs/realtime.html#权限和认证 |
好的,感谢反馈。已修正 wangxiao/leancloud-docs@6e119d8 |
Hi, 我想请问一下目前
roomObj.join
的语义,究竟是invite
还是join
?以我目前的实验来看,sign请求发出时
action
写的是invite
,请求中members
有且只有一个id,就是用户自己。单纯从这个
roomObj.join
的角度来说,这应该是一个join
语义,但发出的却是invite
请求。这个奇怪的现象将直接影响后端sign的内部实现。
我认为这很可能是一个BUG。
The text was updated successfully, but these errors were encountered: