mirror of
				https://github.com/goldbergyoni/nodebestpractices.git
				synced 2025-10-31 17:47:26 +08:00 
			
		
		
		
	hideerrors
Signed-off-by: Alexander Ivanov <oshli.a.er@gmail.com>
This commit is contained in:
		| @ -968,7 +968,7 @@ null == undefined   // true | |||||||
|  |  | ||||||
| **Иначе:** Чувствительная информация о приложении, такая как пути к файлам сервера, используемые сторонние модули и другие внутренние рабочие процессы приложения, которые могут быть использованы злоумышленником, может быть утечка из информации, найденной в трассировке стека. | **Иначе:** Чувствительная информация о приложении, такая как пути к файлам сервера, используемые сторонние модули и другие внутренние рабочие процессы приложения, которые могут быть использованы злоумышленником, может быть утечка из информации, найденной в трассировке стека. | ||||||
|  |  | ||||||
| 🔗 [**Подробнее: Скрывайте детали ошибок от клиентов**](/sections/security/hideerrors.md) | 🔗 [**Подробнее: Скрывайте детали ошибок от клиентов**](/sections/security/hideerrors.russian.md) | ||||||
|  |  | ||||||
| <br/><br/> | <br/><br/> | ||||||
|  |  | ||||||
|  | |||||||
							
								
								
									
										25
									
								
								sections/security/hideerrors.russian.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								sections/security/hideerrors.russian.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,25 @@ | |||||||
|  | # Скрывайте детали ошибок от клиентов | ||||||
|  |  | ||||||
|  | ### Объяснение в один абзац | ||||||
|  |  | ||||||
|  | Следует избегать предоставления подробных сведений об ошибках в сообщениях клиенту в производственном процессе, поскольку существует риск раскрытия таких важных сведений приложения, как пути к файлам сервера, используемые сторонние модули и другие внутренние рабочие процессы приложения, которые могут быть использованы злоумышленником. | ||||||
|  | Express поставляется со встроенным обработчиком ошибок, который заботится о любых ошибках, которые могут возникнуть в приложении. Эта промежуточная функция обработки ошибок по умолчанию добавляется в конец стека функций промежуточного программного обеспечения. | ||||||
|  | Если вы передаете ошибку в `next()` и не обрабатываете ее в пользовательском обработчике ошибок, она будет обработана встроенным обработчиком ошибок Express; ошибка будет записана клиенту с трассировкой стека. Это поведение будет истинным, если для `NODE_ENV` установлено значение `development`, однако, если для `NODE_ENV` установлено значение `production`, трассировка стека не записывается, только код ответа HTTP. | ||||||
|  |  | ||||||
|  | ### Пример кода: экспресс-обработчик ошибок | ||||||
|  |  | ||||||
|  | ``` javascript | ||||||
|  | // production error handler | ||||||
|  | // no stacktraces leaked to user | ||||||
|  | app.use(function(err, req, res, next) { | ||||||
|  |     res.status(err.status || 500); | ||||||
|  |     res.render('error', { | ||||||
|  |         message: err.message, | ||||||
|  |         error: {} | ||||||
|  |     }); | ||||||
|  | }); | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | ### Дополнительные ресурсы | ||||||
|  |  | ||||||
|  | 🔗 [Express.js error handling documentation](https://expressjs.com/en/guide/error-handling.html) | ||||||
		Reference in New Issue
	
	Block a user
	 Alexander Ivanov
					Alexander Ivanov