pub(super) async fn auth<A: AuthDispatch>( services: &Services, request: &mut Request, json_body: Option<&CanonicalJsonValue>, route: TypeId, ) -> Result<Auth>