error-page
错误响应的整个主体:状态码、一句实话、一条回头的路,以及管理员用得上的 500 参考编号。
404:找不到
<div rst-error >
<p rst-error-status >404</p >
<h1 rst-error-title >找不到该页面</h1 >
<p rst-error-body >链接可能已过期,或者页面已移动。请检查网址,或回到起始页面。</p >
<p rst-error-cta >
<a rst-btn ="primary" href ="/" >起始页面</a >
</p >
</div >
{{ template "error-page" dict "Status" 404 "HomeHref" "/" }}
403:无权限
<div rst-error >
<p rst-error-status >403</p >
<h1 rst-error-title >你没有权限查看这个页面</h1 >
<p rst-error-body >你的账户在这里没有访问权限。如果你认为应该有,请联系管理这个网站的人。</p >
<p rst-error-cta >
<a rst-btn ="primary" href ="/" >起始页面</a >
<a rst-btn href ="/posts" >返回</a >
</p >
</div >
{{ template "error-page" dict "Status" 403 "HomeHref" "/" "BackHref" "/posts" }}
422:无法处理
<div rst-error >
<p rst-error-status >422</p >
<h1 rst-error-title >提交未成功</h1 >
<p rst-error-body >发送的内容中有些地方不正确。请返回重试;没有保存任何内容。</p >
<p rst-error-cta >
<a rst-btn ="primary" href ="/" >起始页面</a >
<a rst-btn href ="/posts/1/edit" >返回</a >
</p >
</div >
{{ template "error-page" dict
"Status" 422
"HomeHref" "/"
"BackHref" "/posts/1/edit" }}
500:服务器错误
<div rst-error >
<p rst-error-status >500</p >
<h1 rst-error-title >我们这边出了问题</h1 >
<p rst-error-body >这不是你的问题。问题已记录。请稍后重试;如果一直发生,请提供下方的参考编号。</p >
<p rst-error-cta >
<a rst-btn ="primary" href ="/" >起始页面</a >
</p >
<p class ="rst-mono" rst-error-ref dir ="auto" >参考编号:k3f9tq</p >
</div >
{{ template "error-page" dict "Status" 500 "HomeHref" "/" "Ref" "k3f9tq" }}
500 是唯一带参考编号的状态:运维人员可以用它在日志里 grep。
503:暂时不可用
<div rst-error >
<p rst-error-status >503</p >
<h1 rst-error-title >我们暂时无法提供服务</h1 >
<p rst-error-body >网站正在更新或者比较繁忙。请过一分钟再试。</p >
<p rst-error-cta >
<a rst-btn ="primary" href ="/" >起始页面</a >
</p >
</div >
{{ template "error-page" dict "Status" 503 "HomeHref" "/" }}
其他任何情况:通用的一对
<div rst-error >
<p rst-error-status >418</p >
<h1 rst-error-title >有些地方不对</h1 >
<p rst-error-body >该请求无法完成。请返回重试。</p >
<p rst-error-cta >
<a rst-btn ="primary" href ="/" >起始页面</a >
</p >
</div >
{{ template "error-page" dict "Status" 418 "HomeHref" "/" }}
框架目录里写了五种状态的措辞。第六种会回退到通用的一对,而不是把一个缺失的键名摆到读者眼前。