Prevent from loading nested replied post

This commit is contained in:
2025-11-08 13:21:29 +08:00
parent 94a0ec71da
commit 637cc0cfa4

View File

@@ -221,7 +221,7 @@ public class PostController(
var posts = await query.Skip(offset).Take(take).ToListAsync(); var posts = await query.Skip(offset).Take(take).ToListAsync();
foreach (var post in posts) foreach (var post in posts)
{ {
// Prevent load nested replied post // Prevent to load nested replied post
if (post.RepliedPost != null) if (post.RepliedPost != null)
post.RepliedPost.RepliedPost = null; post.RepliedPost.RepliedPost = null;
} }
@@ -483,11 +483,9 @@ public class PostController(
var postsId = posts.Select(e => e.Id).ToList(); var postsId = posts.Select(e => e.Id).ToList();
var reactionMaps = await ps.GetPostReactionMapBatch(postsId); var reactionMaps = await ps.GetPostReactionMapBatch(postsId);
foreach (var post in posts) foreach (var post in posts)
{
post.ReactionsCount = reactionMaps.TryGetValue(post.Id, out var count) post.ReactionsCount = reactionMaps.TryGetValue(post.Id, out var count)
? count ? count
: new Dictionary<string, int>(); : new Dictionary<string, int>();
}
Response.Headers["X-Total"] = totalCount.ToString(); Response.Headers["X-Total"] = totalCount.ToString();
@@ -603,7 +601,7 @@ public class PostController(
!await rs.IsMemberWithRole( !await rs.IsMemberWithRole(
realm.Id, realm.Id,
accountId, accountId,
[RealmMemberRole.Normal] new List<int> { RealmMemberRole.Normal }
) )
) )
return StatusCode(403, "You are not a member of this realm."); return StatusCode(403, "You are not a member of this realm.");
@@ -1174,4 +1172,4 @@ public class PostController(
return NoContent(); return NoContent();
} }
} }