0

我已经在 Google App Engine 上使用 Django Rest Framework 后端部署了我的 Angular 前端。当我从前端向后端发出请求时,我收到错误 502 Bad Gateway 任何有关识别问题的帮助将不胜感激。我尝试了几个在线建议对我不起作用。这是我的前端 app.yaml

runtime: nodejs12
handlers:
  - url: /
    static_files: smis/index.html
    upload: smis/index.html
    secure: always
  - url: /
    static_dir: smis
    secure: always

这是我的后端 app.yaml 文件

runtime: python38
service: backend
handlers:
  - url: /static
    static_dir: /static/
    secure: always
  - url: /.*
    script: auto
    secure: always

这是我的 dispatch.yaml 文件

#routing rules
dispatch:
  #api
  - url: "*/api/*"
    service: backend
4

2 回答 2

0

url 路由中的前导通配符无效。尝试这个:

#routing rules
dispatch:
  #api
  - url: "/api/*"
    service: backend

然后,任何以开头的 url/api/...都将转到 python 后端

于 2020-10-03T19:13:33.437 回答
0

我发现我没有设置 main.py 文件。应用引擎处理 main.py 文件中的请求,该文件应位于根目录中。main.py 文件的内容可以从 wsgi.py 文件中导出。这是我放在 main.py 文件中的内容,它对我有用:

import os

from django.core.wsgi import get_wsgi_application

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'smis.settings')

application = get_wsgi_application()
app = application
```
于 2020-10-05T01:27:50.563 回答