0

私は一週間から立ち往生しており、すでに何百万ものスペイン語と英語のフォーラムを見てきました...

問題は、Google App Engine から Web サイトを起動すると、ローカルホストで 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. 単純な文字列ではないため、URL 仕様で正規表現を使用しているかどうかを確認してください。
  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 に答える