Skip to content

Commit bbf8846

Browse files
committed
feat: skip traffic control on streaming requests
1 parent 6dad129 commit bbf8846

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

handler/main.go

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -37,13 +37,17 @@ func NewRouter() http.Handler {
3737
if !plexClient.NoRequestLogs {
3838
r.Use(middleware.Logger)
3939
}
40-
r.Use(wrapMiddleware, middleware.Recoverer, trafficMiddleware)
40+
r.Use(wrapMiddleware, middleware.Recoverer)
4141

42-
// bypass cache
43-
r.PathPrefix("/:/").Handler(plexClient)
44-
r.PathPrefix("/library/parts/").Handler(plexClient)
42+
streamingRouter := r.NewRoute().Subrouter()
43+
streamingRouter.PathPrefix("/library/parts/").Handler(plexClient)
44+
streamingRouter.PathPrefix("/video/:/transcode/").Handler(plexClient)
4545

46-
staticRouter := r.Methods(http.MethodGet).Subrouter()
46+
getRouter := r.Methods(http.MethodGet).Subrouter()
47+
getRouter.Use(trafficMiddleware)
48+
getRouter.PathPrefix("/:/").Handler(plexClient)
49+
50+
staticRouter := getRouter.NewRoute().Subrouter()
4751
staticRouter.Use(staticMiddleware)
4852
staticRouter.Path("/library/media/{key}/chapterImages/{id}").Handler(plexClient)
4953
staticRouter.Path("/library/metadata/{key}/art/{id}").Handler(plexClient)
@@ -52,7 +56,7 @@ func NewRouter() http.Handler {
5256
staticRouter.PathPrefix("/web/js/").Handler(plexClient)
5357
staticRouter.PathPrefix("/web/static/").Handler(plexClient)
5458

55-
dynamicRouter := r.Methods(http.MethodGet).Subrouter()
59+
dynamicRouter := getRouter.NewRoute().Subrouter()
5660
dynamicRouter.Use(dynamicMiddleware)
5761
dynamicRouter.PathPrefix("/").Handler(plexClient)
5862

0 commit comments

Comments
 (0)