我使用react-router-dom将我的react应用程序(客户端渲染)创建为单页应用程序。使用以下方法捕获404页面非常简单:
import {Router} from 'react-router-dom';
import {Switch, Route, Redirect} from 'react-router-dom';
...
const Main = () => {
return (
<Router history={history}>
<Switch>
<Route exact path="/" component={Home}/>
...
<Route path="*" status={404} component={PageNotFound}/>
</Switch>
</Router>
)
};
export default Main;
这有效。但是,当呈现PageNotFound组件时, http标头状态仍为200 ,而不是预期的404。
使用客户端呈现时,是否可以设置404(或301)页面标题?
答案 0 :(得分:0)
您应该在服务器上处理此问题,但是如果仍然希望在客户端设置http状态代码,则可以使用npm软件包。 Here
从文档中
import React from "react";
import StatusCode from "konnektid-react-status";
// render your component
const MyComponent = () => (
<StatusCode code={404}>
Sorry, page was not found
</StatusCode>
)