reactjs - React App 保护路由抛出拒绝访问错误 - 托管在 AWS Amplify 上
问题描述
我在 AWS Amplify 上托管了我的 react 应用程序。在尝试访问应用程序的受保护路由时,我在屏幕上收到以下错误此 XML 文件似乎没有任何与之关联的样式信息。文档树如下所示。
<Error>
<Code>AccessDenied</Code>
<Message>Access Denied</Message>
<RequestId>3C8377104116CA48</RequestId>
<HostId>nL3bDs+kXEWE8uBFPTLkFLpRg6CCmKfejftWs5wmTWYO6K6WDzpwsDXJCFTK0EFhjJdaHECfuos=</HostId>
</Error>
我该如何解决这个问题?
解决方案
路由重定向和重写对已部署的 AWS Amplify 应用程序具有特殊配置。检查
AWS Amplify 控制台 > 应用程序设置 > 重写和重定向
配置重写规则为我解决了这个问题。我的规则如下所示:来源 -
</^[^.]+$|\.(?!(css|yaml|gif|ico|jpg|js|png|txt|svg|woff2|woff|ttf|map|json)$)([^.]+$)/>
目标 -
/index.html
类型 -
200 (Rewrite)
详细说明在这里 - https://docs.aws.amazon.com/amplify/latest/userguide/redirects.html
推荐阅读
- java - 是否有一种简单的方法可以将 Java 不可变对象与查询中的可选字段绑定?
- javascript - 我需要在Javascript中提取字符串的每个第n个字符
- vue.js - What is the right way to use :value and v-model together in a
- clojure - Clojure 中的 Google Api 查询问题
- javascript - 仅在浏览器退出时调用 beforeunload - 不是链接或表单等
- javascript - 使用 NodeJS 进行抓取
- spring-boot - logback spring 根据 spring 配置文件关闭控制台日志记录
- javascript - Chrome Devtools 以什么方式异步记录对象?(特别是在 React Native 中)
- r - 替换为最右边行字符串右侧的 NA
- python - Pusher:Swift (iOS) 发布者/服务器到 Raspberry Python 订阅者/客户端