我正在尝试将Google App Engine Standard Flask web应用程序从Python 2.7迁移到Python 3。它在部署到appspot时工作得很好,但在运行本地开发服务器时仍然遇到问题。
问题是,当在本地开发服务器上运行时,我的应用程序无法找到我的静态文件。我得到这个错误Uncaught SyntaxError: Unexpected token '<',它是针对我的jquery-3.3.1.min.js:文件的。我相当确定发生的情况是,它试图找到我的JQuery文件,但失败了,收到了一个404error的html页面,并抛出了一个语法错误,因为它需要的是JavaScript文件,而不是HTML.
我的JQuery文件并不是唯一受影响的静态文件。例如,我的CSS没有加载,我的应用程序找不到我的本地图像。
以下是一些代码片段:
app.yaml
runtime: python38
instance_class: F4
automatic_scaling:
max_concurrent_requests: 30
handlers:
- url: /_ah/start
script: auto
- url: /app_shared/app_setup/app_style/*
static_dir: app_shared/app_setup/app_style
- url: /app_shared/app_setup/app_images/*
static_dir: app_shared/app_setup/app_images
- url: /app_shared/app_static/jquery/v_3_3_1/*
static_dir: app_shared/app_static/jquery/v_3_3_1
- url: /app_shared/app_static/util/*
static_dir: app_shared/app_static/util
- url: .*
script: auto
error_handlers:
- file: app_code/templates/errors/default.htm
- error_code: timeout
file: app_code/templates/errors/408_timeout.htmh_main_header_menu.htm (这在head标签中)
<script src="/app_shared/app_static/jquery/v_3_3_1/jquery-3.3.1.min.js"></script>下面是从项目根目录到JQuery文件的层次结构: app_shared/app_static/jquery/v_3_3_1_jquery-3.3.1.min.js
为了运行本地开发服务器,我遵循了谷歌的文档、here和here。因此,我先使用命令venv\Scripts\activate,然后使用python main.py来运行它。
有人知道这里出了什么问题吗?我不知所措。感谢您在这里提供的任何帮助。提前谢谢你。
发布于 2020-10-06 00:56:48
我想通了。我需要将我的app_shared文件夹重命名为static。您可以在here上找到烧瓶文档
https://stackoverflow.com/questions/64164661
复制相似问题