mirror of
https://github.com/LemmyNet/lemmy.git
synced 2025-09-03 11:43:51 +00:00
* Stricter rate limit for fetching link metadata (fixes #5287) * Switch to search rate limit * use search rate limit for resolve object * pictrs rate limit * undo test change * fix
This commit is contained in:
parent
a4bf28e123
commit
d1eff9084b
2 changed files with 27 additions and 11 deletions
|
@ -137,9 +137,13 @@ pub fn config(cfg: &mut ServiceConfig, rate_limit: &RateLimitCell) {
|
|||
.wrap(rate_limit.image())
|
||||
.route(post().to(upload_image)),
|
||||
)
|
||||
.service(resource("/pictrs/image/{filename}").route(get().to(get_image)))
|
||||
.service(resource("/pictrs/image/delete/{token}/{filename}").route(get().to(delete_image)))
|
||||
.service(resource("/pictrs/healthz").route(get().to(pictrs_health)))
|
||||
.service(
|
||||
scope("/pictrs")
|
||||
.wrap(rate_limit.message())
|
||||
.route("/image/{filename}", get().to(get_image))
|
||||
.route("/image/delete/{token}/{filename}", get().to(delete_image))
|
||||
.route("/healthz", get().to(pictrs_health)),
|
||||
)
|
||||
.service(
|
||||
scope("/api/v3")
|
||||
.route("/image_proxy", get().to(image_proxy))
|
||||
|
@ -165,7 +169,7 @@ pub fn config(cfg: &mut ServiceConfig, rate_limit: &RateLimitCell) {
|
|||
)
|
||||
.service(
|
||||
resource("/resolve_object")
|
||||
.wrap(rate_limit.message())
|
||||
.wrap(rate_limit.search())
|
||||
.route(get().to(resolve_object)),
|
||||
)
|
||||
// Community
|
||||
|
@ -198,12 +202,17 @@ pub fn config(cfg: &mut ServiceConfig, rate_limit: &RateLimitCell) {
|
|||
)
|
||||
// Post
|
||||
.service(
|
||||
// Handle POST to /post separately to add the post() rate limitter
|
||||
resource("/post")
|
||||
// Handle POST to /post separately to add the post() rate limitter
|
||||
.guard(guard::Post())
|
||||
.wrap(rate_limit.post())
|
||||
.route(post().to(create_post)),
|
||||
)
|
||||
.service(
|
||||
resource("/post/site_metadata")
|
||||
.wrap(rate_limit.search())
|
||||
.route(get().to(get_link_metadata)),
|
||||
)
|
||||
.service(
|
||||
scope("/post")
|
||||
.wrap(rate_limit.message())
|
||||
|
@ -220,8 +229,7 @@ pub fn config(cfg: &mut ServiceConfig, rate_limit: &RateLimitCell) {
|
|||
.route("/like/list", get().to(list_post_likes))
|
||||
.route("/save", put().to(save_post))
|
||||
.route("/report", post().to(create_post_report))
|
||||
.route("/report/resolve", put().to(resolve_post_report))
|
||||
.route("/site_metadata", get().to(get_link_metadata)),
|
||||
.route("/report/resolve", put().to(resolve_post_report)),
|
||||
)
|
||||
// Comment
|
||||
.service(
|
||||
|
|
|
@ -197,7 +197,11 @@ pub fn config(cfg: &mut ServiceConfig, rate_limit: &RateLimitCell) {
|
|||
.wrap(rate_limit.search())
|
||||
.route(get().to(search)),
|
||||
)
|
||||
.route("/resolve_object", get().to(resolve_object))
|
||||
.service(
|
||||
resource("/resolve_object")
|
||||
.wrap(rate_limit.search())
|
||||
.route(get().to(resolve_object)),
|
||||
)
|
||||
// Community
|
||||
.service(
|
||||
resource("/community")
|
||||
|
@ -233,12 +237,17 @@ pub fn config(cfg: &mut ServiceConfig, rate_limit: &RateLimitCell) {
|
|||
.route("/federated_instances", get().to(get_federated_instances))
|
||||
// Post
|
||||
.service(
|
||||
// Handle POST to /post separately to add the post() rate limitter
|
||||
resource("/post")
|
||||
// Handle POST to /post separately to add the post() rate limitter
|
||||
.guard(guard::Post())
|
||||
.wrap(rate_limit.post())
|
||||
.route(post().to(create_post)),
|
||||
)
|
||||
.service(
|
||||
resource("/post/site_metadata")
|
||||
.wrap(rate_limit.search())
|
||||
.route(get().to(get_link_metadata)),
|
||||
)
|
||||
.service(
|
||||
scope("/post")
|
||||
.route("", get().to(get_post))
|
||||
|
@ -255,8 +264,7 @@ pub fn config(cfg: &mut ServiceConfig, rate_limit: &RateLimitCell) {
|
|||
.route("/like/list", get().to(list_post_likes))
|
||||
.route("/save", put().to(save_post))
|
||||
.route("/report", post().to(create_post_report))
|
||||
.route("/report/resolve", put().to(resolve_post_report))
|
||||
.route("/site_metadata", get().to(get_link_metadata)),
|
||||
.route("/report/resolve", put().to(resolve_post_report)),
|
||||
)
|
||||
// Comment
|
||||
.service(
|
||||
|
|
Loading…
Reference in a new issue