chore: remove log
This commit is contained in:
@@ -30,7 +30,6 @@ const whiteList = [
|
|||||||
const baseQuery = fetchBaseQuery({
|
const baseQuery = fetchBaseQuery({
|
||||||
baseUrl: BASE_URL,
|
baseUrl: BASE_URL,
|
||||||
prepareHeaders: (headers, { getState, endpoint }) => {
|
prepareHeaders: (headers, { getState, endpoint }) => {
|
||||||
console.info("req", endpoint);
|
|
||||||
const { token } = (getState() as RootState).authData;
|
const { token } = (getState() as RootState).authData;
|
||||||
if (token && !whiteList.includes(endpoint)) {
|
if (token && !whiteList.includes(endpoint)) {
|
||||||
headers.set(tokenHeader, token);
|
headers.set(tokenHeader, token);
|
||||||
|
|||||||
@@ -100,7 +100,6 @@ export default function useMessageFeed({ context = "channel", id }: Props) {
|
|||||||
mids: serverMids,
|
mids: serverMids,
|
||||||
isLast: true
|
isLast: true
|
||||||
});
|
});
|
||||||
console.log("pull up first", pageInfo, serverMids);
|
|
||||||
pageRef.current = pageInfo;
|
pageRef.current = pageInfo;
|
||||||
listRef.current = pageInfo.ids;
|
listRef.current = pageInfo.ids;
|
||||||
setItems(listRef.current);
|
setItems(listRef.current);
|
||||||
@@ -112,7 +111,6 @@ export default function useMessageFeed({ context = "channel", id }: Props) {
|
|||||||
return Number(a) - Number(b);
|
return Number(a) - Number(b);
|
||||||
});
|
});
|
||||||
const appends = sorteds.filter((s: number) => s > lastMid);
|
const appends = sorteds.filter((s: number) => s > lastMid);
|
||||||
console.log("pull up appends", appends, sorteds, lastMid, mids);
|
|
||||||
if (appends.length) {
|
if (appends.length) {
|
||||||
setAppends(appends);
|
setAppends(appends);
|
||||||
const [newestMsgId] = appends.slice(-1);
|
const [newestMsgId] = appends.slice(-1);
|
||||||
@@ -136,7 +134,6 @@ export default function useMessageFeed({ context = "channel", id }: Props) {
|
|||||||
}, [mids, messageData, loginUid]);
|
}, [mids, messageData, loginUid]);
|
||||||
const pullUp = async () => {
|
const pullUp = async () => {
|
||||||
const currPageInfo = pageRef.current;
|
const currPageInfo = pageRef.current;
|
||||||
console.log("pull up", currPageInfo);
|
|
||||||
// 第一页
|
// 第一页
|
||||||
if (currPageInfo && currPageInfo.isFirst) {
|
if (currPageInfo && currPageInfo.isFirst) {
|
||||||
const [firstMid] = currPageInfo.ids;
|
const [firstMid] = currPageInfo.ids;
|
||||||
|
|||||||
@@ -62,16 +62,14 @@ export default function useStreaming() {
|
|||||||
}
|
}
|
||||||
}, timeout ?? 20000);
|
}, timeout ?? 20000);
|
||||||
};
|
};
|
||||||
const startStreaming = useCallback(
|
const startStreaming = useCallback(async () => {
|
||||||
async () => {
|
|
||||||
console.log("start streaming", SSE, SSE?.readyState);
|
|
||||||
if (connectionIsOpen) return;
|
if (connectionIsOpen) return;
|
||||||
window.clearTimeout(aliveInter);
|
window.clearTimeout(aliveInter);
|
||||||
if (SSE && (SSE.readyState === EventSource.OPEN || SSE.readyState === EventSource.CONNECTING)) return;
|
if (SSE && (SSE.readyState === EventSource.OPEN || SSE.readyState === EventSource.CONNECTING))
|
||||||
|
return;
|
||||||
const { token, refreshToken, expireTime } = getLocalAuthData();
|
const { token, refreshToken, expireTime } = getLocalAuthData();
|
||||||
// token 非空
|
// token 非空
|
||||||
if (!token) {
|
if (!token) {
|
||||||
console.info("sse start streaming no token", token);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
let _token = token;
|
let _token = token;
|
||||||
@@ -91,7 +89,7 @@ export default function useStreaming() {
|
|||||||
after_mid?: string;
|
after_mid?: string;
|
||||||
users_version?: string;
|
users_version?: string;
|
||||||
} = {
|
} = {
|
||||||
"api-key": _token,
|
"api-key": _token
|
||||||
};
|
};
|
||||||
// 如果afterMid是0,则不传该参数
|
// 如果afterMid是0,则不传该参数
|
||||||
if (afterMid !== 0) {
|
if (afterMid !== 0) {
|
||||||
@@ -121,46 +119,36 @@ export default function useStreaming() {
|
|||||||
keepAlive(2000);
|
keepAlive(2000);
|
||||||
};
|
};
|
||||||
SSE.onmessage = (evt) => {
|
SSE.onmessage = (evt) => {
|
||||||
console.info("sse message", evt.data);
|
|
||||||
const data: ServerEvent = JSON.parse(evt.data);
|
const data: ServerEvent = JSON.parse(evt.data);
|
||||||
const { type } = data;
|
const { type } = data;
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case "heartbeat": {
|
case "heartbeat":
|
||||||
keepAlive();
|
keepAlive();
|
||||||
console.info("sse heartbeat", loginUid);
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case "ready":
|
case "ready":
|
||||||
console.info("sse streaming ready");
|
|
||||||
// 有时候,heartbeat不会发?
|
// 有时候,heartbeat不会发?
|
||||||
keepAlive();
|
keepAlive();
|
||||||
dispatch(setReady());
|
dispatch(setReady());
|
||||||
break;
|
break;
|
||||||
case "users_snapshot":
|
case "users_snapshot": {
|
||||||
{
|
|
||||||
console.info("sse users snapshot");
|
|
||||||
const { version } = data;
|
const { version } = data;
|
||||||
dispatch(updateUsersVersion(version));
|
dispatch(updateUsersVersion(version));
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case "users_log":
|
}
|
||||||
{
|
case "users_log": {
|
||||||
const { logs } = data;
|
const { logs } = data;
|
||||||
console.info("sse users change logs", logs);
|
|
||||||
dispatch(updateUsersByLogs(logs));
|
dispatch(updateUsersByLogs(logs));
|
||||||
// 特殊处理当前登录用户的更新
|
// 特殊处理当前登录用户的更新
|
||||||
logs.forEach((log) => {
|
logs.forEach((log) => {
|
||||||
const { uid, action, log_id, ...rest } = log;
|
const { uid, action, log_id, ...rest } = log;
|
||||||
if (uid === loginUid && action === 'update') {
|
if (uid === loginUid && action === "update") {
|
||||||
dispatch(updateLoginUser(omitBy(rest, isNull)));
|
dispatch(updateLoginUser(omitBy(rest, isNull)));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
case "user_settings":
|
case "user_settings":
|
||||||
case "user_settings_changed":
|
case "user_settings_changed": {
|
||||||
{
|
|
||||||
console.info("sse users settings");
|
|
||||||
Object.keys(data).forEach((key) => {
|
Object.keys(data).forEach((key) => {
|
||||||
switch (key) {
|
switch (key) {
|
||||||
case "read_index_groups":
|
case "read_index_groups":
|
||||||
@@ -196,8 +184,8 @@ export default function useStreaming() {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
case "users_state":
|
case "users_state":
|
||||||
case "users_state_changed":
|
case "users_state_changed":
|
||||||
{
|
{
|
||||||
@@ -209,7 +197,6 @@ export default function useStreaming() {
|
|||||||
break;
|
break;
|
||||||
case "kick":
|
case "kick":
|
||||||
{
|
{
|
||||||
console.info("sse kicked");
|
|
||||||
switch (data.reason) {
|
switch (data.reason) {
|
||||||
case "login_from_other_device":
|
case "login_from_other_device":
|
||||||
dispatch(resetAuthData());
|
dispatch(resetAuthData());
|
||||||
@@ -225,87 +212,54 @@ export default function useStreaming() {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "related_groups":
|
case "related_groups":
|
||||||
console.info("sse fill channels from streaming", data);
|
|
||||||
dispatch(fillChannels(data.groups));
|
dispatch(fillChannels(data.groups));
|
||||||
break;
|
break;
|
||||||
case "joined_group":
|
case "joined_group":
|
||||||
console.info("sse joined group", data.group);
|
|
||||||
dispatch(addChannel(data.group));
|
dispatch(addChannel(data.group));
|
||||||
break;
|
break;
|
||||||
case "group_changed":
|
case "group_changed":
|
||||||
{
|
{
|
||||||
const { gid, ...rest } = data;
|
const { gid, ...rest } = data;
|
||||||
dispatch(
|
dispatch(updateChannel({ gid, ...rest }));
|
||||||
updateChannel({
|
|
||||||
gid,
|
|
||||||
...rest
|
|
||||||
})
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "user_joined_group":
|
case "user_joined_group": {
|
||||||
{
|
|
||||||
console.info("sse new user joined group", data.gid);
|
|
||||||
const { gid, uid: uids } = data;
|
const { gid, uid: uids } = data;
|
||||||
// 去重
|
// 去重
|
||||||
dispatch(
|
dispatch(updateChannel({ operation: "add_member", gid, members: uids }));
|
||||||
updateChannel({
|
|
||||||
operation: "add_member",
|
|
||||||
gid,
|
|
||||||
members: uids
|
|
||||||
})
|
|
||||||
);
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case "user_leaved_group":
|
}
|
||||||
{
|
case "user_leaved_group": {
|
||||||
const { gid, uid: uids } = data;
|
const { gid, uid: uids } = data;
|
||||||
if (uids.findIndex((uid) => uid == loginUid) > -1) {
|
if (uids.findIndex((uid) => uid == loginUid) > -1) {
|
||||||
dispatch(removeChannel(gid));
|
dispatch(removeChannel(gid));
|
||||||
} else {
|
} else {
|
||||||
dispatch(
|
dispatch(updateChannel({ operation: "remove_member", gid, members: uids }));
|
||||||
updateChannel({
|
|
||||||
operation: "remove_member",
|
|
||||||
gid,
|
|
||||||
members: uids
|
|
||||||
})
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
case "kick_from_group":
|
case "kick_from_group":
|
||||||
console.info("sse kicked from group", data.gid);
|
|
||||||
dispatch(removeChannel(data.gid));
|
dispatch(removeChannel(data.gid));
|
||||||
break;
|
break;
|
||||||
case "pinned_message_updated":
|
case "pinned_message_updated":
|
||||||
{
|
|
||||||
// const {gid,mid,msg}=data;
|
|
||||||
dispatch(updatePinMessage(data));
|
dispatch(updatePinMessage(data));
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case "chat":
|
case "chat": {
|
||||||
{
|
|
||||||
chatMessageHandler(data, dispatch, {
|
chatMessageHandler(data, dispatch, {
|
||||||
ready,
|
ready,
|
||||||
loginUid,
|
loginUid,
|
||||||
readUsers,
|
readUsers,
|
||||||
readChannels
|
readChannels
|
||||||
});
|
});
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
console.info("sse event data", data);
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
},
|
}, [afterMid, usersVersion]);
|
||||||
[afterMid, usersVersion],
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
const stopStreaming = () => {
|
const stopStreaming = () => {
|
||||||
console.info("sse stop streaming");
|
|
||||||
if (SSE) {
|
if (SSE) {
|
||||||
SSE.close();
|
SSE.close();
|
||||||
SSE = undefined;
|
SSE = undefined;
|
||||||
@@ -321,13 +275,11 @@ export default function useStreaming() {
|
|||||||
}
|
}
|
||||||
return () => {
|
return () => {
|
||||||
if (streamingReady && !hasOpened) {
|
if (streamingReady && !hasOpened) {
|
||||||
console.log("stop from streamingReady");
|
|
||||||
stopStreaming();
|
stopStreaming();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}, [streamingReady]);
|
}, [streamingReady]);
|
||||||
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
setStreamingReady,
|
setStreamingReady,
|
||||||
startStreaming,
|
startStreaming,
|
||||||
|
|||||||
Reference in New Issue
Block a user