1

Python SDKコードの静的ルートがhttp_serverにロードまたはアクセスされる場所を大まかに指摘できますか。これは、静的イメージのロードの失敗をデバッグするためです。Eclipse では、静的ルートが yaml ファイルから var appinfo にロードされているのを確認できます。後で、リクエスト中に動的ルートがチェックされているのを確認できますが、その間の手順に従うのに問題があります。ありがとう

11/30更新

以前、いくつかのドキュメントや投稿で提案された yaml、パスなどのバリエーションを試しました。ここにそれらの1つがあります。この場合、404 エラーは発生しませんが、画像は読み込まれず、Firebug は「指定された URL の読み込みに失敗しました」と報告します。

app.yaml

application: crazywidget2  
version: 1  
runtime: python27  
api_version: 1  
threadsafe: false  

handlers:  
- url: /images  
  static_dir: /images  
  secure: always  

-url: /.*  
  script: crazywidget2.py  
  secure: always  

libraries:  
- name: jinja2    
  version: latest

index.html

...  
<img src="/images/xyz.gif" alt="XYZ illustration" />  
...  

クレイジーウィジェット2.py

...
class MainPage(webapp2.RequestHandler):

    def get(self):
        template = jinja_environment.get_template('index.html')
        self.response.out.write(template.render({}))

...
...

app = webapp2.WSGIApplication([('/script_send', ScriptSend),
                        ('/resetkey', ResetKey),
                        ('/admin', Admin),  
                        ('/start', Start),  
                        ('/', MainPage)],  
                            debug=True)  


 def main():

    app.run()

if __name__=='__main__':
    main()                    

12/3更新

上記の場合、static_dir が「/images」ではなく「images」の相対ディレクトリである場合に機能することがわかります。絶対的な場合、そのパスをそのまま開こうとします。たぶん、他のいくつかのバリエーションも同様に機能するでしょう。

4

2 に答える 2

0

関連する3つのコードポインターを次に示します(すべてgoogle / appengine / tools / dev_appserver.pyにあります)。

ただし、問題をデバッグするためのより簡単な方法があると思います。app.yamlとアクセスするパス、および取得する応答を投稿すると、ここの人々があなたを助け始める可能性があります。

于 2012-11-30T09:03:04.687 に答える
0

直感:/imagesハンドラーの末尾にスラッシュを追加すると機能しますか? で使用する両方の場所で に置き換え/imagesてみてください。/images/app.yaml

于 2012-12-02T23:03:46.610 に答える