0

我被困了一个星期,我已经看过一百万个西班牙语和英语论坛......

问题是当我从 Google App Engine 启动我的网站时,Javascript 在我的本地主机上不起作用。

如果我复制/粘贴所有 html、css 和 .js 文件,然后在浏览器中从 Notepad++ 启动,则效果很好,但由于任何原因在 GAE 上不起作用,我不知道为什么。

app.yaml 有效,因为如果我在浏览器中编写:

http://localhost:8080/js/script.js,然后出现javascript代码。

这是我的所有代码:

HTML:

<script type="text/javascript" src="/js/jquery.js"</script>
<script type="text/javascript" src="/js/script.js"></script>

JS:

$(document).ready(function() {
    $("#ingles").fadeOut(1000);
});

我的 app.yaml:

application: juanmamorenoportfolio
version: 1
runtime: python27
api_version: 1
threadsafe: true

handlers:
- url: /stylesheets
  static_dir: stylesheets

- url: /images
  static_dir: static_files/images

- url: /js
  static_dir: js

- url: .*
  upload: templates/index.html
  static_files: templates/index.html

libraries:
- name: webapp2
  version: latest
- name: jinja2
  version: latest

和我的 main.py (我怀疑问题应该在这里):

import os
import webapp2
import jinja2

jinja_environment = jinja2.Environment(autoescape=True,
    loader=jinja2.FileSystemLoader(os.path.join(os.path.dirname(__file__), 'templates')))

class MainHandler(webapp2.RequestHandler):
    def get(self):
        template = jinja_environment.get_template('index.html')
        self.response.out.write(template.render())

app = webapp2.WSGIApplication([
    ('/', MainHandler)
], debug=True)

非常感谢!!

4

2 回答 2

0

Javascript 在 SDK 和生产环境中完美运行。

  1. app.yaml 错误 - 将正确的路径写入 jquery.js。
  2. 将文件放在需要的位置或您之前指向的位置。
  3. 检查您是否在 urls 规范中进行正则表达式,因为它不是简单的字符串。
  4. 可能upload:是必需的- url:
  5. 尝试http://localhost:8080/js/script.js检查是否显示代码。
  6. 检查页面是否 HTML 正常。
  7. 检查是否在即 Chrome 控制台中定义了 $。
  8. 投票给我的答案。

阅读文档静态文件处理程序

于 2013-08-27T14:27:31.093 回答
0

是的,它与upload:事情有关: 静态文件模式处理程序

于 2013-08-27T17:06:47.140 回答