mirror of
				https://github.com/dani-garcia/vaultwarden.git
				synced 2025-10-27 16:30:02 +02:00 
			
		
		
		
	add api_not_found catcher for 404 errors in /api
This commit is contained in:
		| @@ -38,6 +38,7 @@ pub fn routes() -> Vec<Route> { | |||||||
| // Move this somewhere else | // Move this somewhere else | ||||||
| // | // | ||||||
| use rocket::serde::json::Json; | use rocket::serde::json::Json; | ||||||
|  | use rocket::Catcher; | ||||||
| use rocket::Route; | use rocket::Route; | ||||||
| use serde_json::Value; | use serde_json::Value; | ||||||
|  |  | ||||||
| @@ -221,3 +222,18 @@ fn config() -> Json<Value> { | |||||||
|         }, |         }, | ||||||
|     })) |     })) | ||||||
| } | } | ||||||
|  |  | ||||||
|  | pub fn catchers() -> Vec<Catcher> { | ||||||
|  |     catchers![api_not_found] | ||||||
|  | } | ||||||
|  |  | ||||||
|  | #[catch(404)] | ||||||
|  | fn api_not_found() -> Json<Value> { | ||||||
|  |     Json(json!({ | ||||||
|  |         "error": { | ||||||
|  |             "code": 404, | ||||||
|  |             "reason": "Not Found", | ||||||
|  |             "description": "The requested resource could not be found." | ||||||
|  |         } | ||||||
|  |     })) | ||||||
|  | } | ||||||
|   | |||||||
| @@ -10,6 +10,7 @@ use serde_json::Value; | |||||||
|  |  | ||||||
| pub use crate::api::{ | pub use crate::api::{ | ||||||
|     admin::routes as admin_routes, |     admin::routes as admin_routes, | ||||||
|  |     core::catchers as core_catchers, | ||||||
|     core::purge_sends, |     core::purge_sends, | ||||||
|     core::purge_trashed_ciphers, |     core::purge_trashed_ciphers, | ||||||
|     core::routes as core_routes, |     core::routes as core_routes, | ||||||
|   | |||||||
| @@ -426,6 +426,7 @@ async fn launch_rocket(pool: db::DbPool, extra_debug: bool) -> Result<(), Error> | |||||||
|         .mount([basepath, "/icons"].concat(), api::icons_routes()) |         .mount([basepath, "/icons"].concat(), api::icons_routes()) | ||||||
|         .mount([basepath, "/notifications"].concat(), api::notifications_routes()) |         .mount([basepath, "/notifications"].concat(), api::notifications_routes()) | ||||||
|         .register([basepath, "/"].concat(), api::web_catchers()) |         .register([basepath, "/"].concat(), api::web_catchers()) | ||||||
|  |         .register([basepath, "/api"].concat(), api::core_catchers()) | ||||||
|         .manage(pool) |         .manage(pool) | ||||||
|         .manage(api::start_notification_server()) |         .manage(api::start_notification_server()) | ||||||
|         .attach(util::AppHeaders()) |         .attach(util::AppHeaders()) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user