2016-12-24 48 views
0

我已经定义了一个名为title的刀片部分,我使用它,例如@section('title', 'Log in'),然后打印为<h1>Log in</h1>。然而,在一些页面上,标题将由用户输入确定(即$subject)。我发现如果我做@section('title', $subject->name)那么这个值不会被转义,这会让我的站点对XSS攻击开放。我怎样才能避免这种情况?@section标记中的内容转义

回答

2

在Laravel中,您可以使用e辅助函数来转义值。你应该能够做这样的事情:

@section('title', e($subject->name)) 

如果走在BladeCompiler代码一看,你可以看到,Laravel自身转换默认逃脱输出({{ }})为e(..)