0

我使用 Create-react-app 建立了一个房地产网站。其中一个 api 是在生产中给我 Cors 错误。根据 netlify 的文档,我在项目的根目录中设置了一个 netlify.toml 文件。在其中我使用以下规则

``

[[redirects]]
from = "/api/*"
to = "https://completecriminalchecks.com/:splat"
status = 200
force = true

我的原始请求如下所示:

const response = await fetch(
    `/api/json/?apikey=6s4122z013xlvtphdfsdfxxe19&search=radius&miles=2&center=${theZip}`,
    {
      method: "GET",
      headers: {
        "Access-Control-Allow-Origin": "*"
      }
    }

我希望这能将我的请求代理到 https://completecriminalchecks.com/ + /api/json/?apikey=6s4122z013xlvtfsdfxxe19&search=radius&miles=2¢er=${theZip}

but when I check my network dev tools the request is made to

Request URL: https://jessehaven.netlify.app/api/json/?apikey=6s4122z013vfvffxlvtphrnuge19&search=radius&miles=2&center=18702

为什么它不代表我在 to 规则中拥有的东西?

4

1 回答 1

0

我想您的 api 域是https://completecriminalchecks.com/api/。如果是这种情况,请在您的 url 之后添加 /api,如下所示,它应该可以工作。

另外,我希望您在 netlify.toml 文件中 [[redirects]] 行之后的每个配置行之前应用两个空格

[[redirects]]
  from = "/api/*"
  to = "https://completecriminalchecks.com/api/:splat"
  status = 200
  force = true

============我在下面使用 netlify.toml conf,它适用于我的 SPA======

# api redirect.
[[redirects]]
  from = "/api/*"
  to = "http://X.X.X.X/api/:splat"
  status = 200
# SPA router support.
[[redirects]]
  from = "/*"
  to = "/index.html"
  status = 200
于 2020-05-27T08:23:23.613 回答