1

dev_appserver.py私のマシンで使用するアプリがあります。私はそれを正常に展開します:

ronj@l:~$ appcfg.py update myapp/
03:03 PM Host: appengine.google.com
03:03 PM Application: myapp; version: 1
...
03:03 PM Completed update of app: myapp, version: 1

私のアプリは Google API を使用しているため、このデプロイにはclient_secrets.jsonプロジェクト フォルダーのルートにあるファイルが含まれています。そして、アプリを再ダウンロードするときに( を使用してappcfg.py download_app -A myapp -V 1 ~/myapp)取得するため、正しく展開されているようです。

ただし、 へのアクセスが必要なスクリプトを呼び出すページを開くと、 が表示されclient_secrets.jsonError: Server Errorインスタンス ログに次のように表示されます (myapp と MYID は検閲されています)。

Traceback (most recent call last):
  File "/python27_runtime/python27_lib/versions/1/google/appengine/runtime/wsgi.py", line 196, in Handle
    handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
  File "/python27_runtime/python27_lib/versions/1/google/appengine/runtime/wsgi.py", line 255, in _LoadHandler
    handler = __import__(path[0])
  File "/base/data/home/apps/s~myapp/1.MYID/myapp.py", line 42, in <module>
    YOUTUBE_READ_WRITE_SCOPE)
  File "/base/data/home/apps/s~myapp/1.MYID/oauth2client/util.py", line 128, in positional_wrapper
    return wrapped(*args, **kwargs)
  File "/base/data/home/apps/s~myapp/1.MYID/oauth2client/appengine.py", line 854, in __init__
    client_type, client_info = clientsecrets.loadfile(filename, cache=cache)
  File "/base/data/home/apps/s~myapp/1.MYID/oauth2client/clientsecrets.py", line 145, in loadfile
    return _loadfile(filename)
  File "/base/data/home/apps/s~myapp/1.MYID/oauth2client/clientsecrets.py", line 107, in _loadfile
    raise InvalidClientSecretsError('File not found: "%s"' % filename)
InvalidClientSecretsError: File not found: "/base/data/home/apps/s~myapp/1.MYID/client_secrets.json"

の 41 行目と 42 行目は次のmyapp.pyとおりです。

decorator = OAuth2DecoratorFromClientSecrets(CLIENT_SECRETS,
    YOUTUBE_READ_WRITE_SCOPE)

そしてここにありますCLIENT_SECRETS

CLIENT_SECRETS = os.path.join(os.path.dirname(__file__), 'client_secrets.json')

私は何を間違っていますか?

EDIT : #appengine のマーフは、それは不適切なapp.yaml構成に起因する可能性があると述べており、「静的ファイルとして提供されていないことを確認し、独自のコードがそれを提供することを決定していないことを確認してください」app.yamlと述べていますが、そのファイルへのすべての静的ハンドラーを削除した後、問題は解決しません。これが私の app.yaml へのペーストビンです。そういえば、client_secrets.json を残してデプロイすると、"Cloning 6 static files"が表示されることに気付きました。次に、それを削除して再デプロイすると、「Cloning 5 static files」が表示されます。app.yamlそれは、 myに一致するものがまだあることを確認していますかclient_secrets.json、それともこれらの別のメカニズムですか?

4

1 に答える 1

2

はい、一致する「js」

- url: /(.*\.(gif|png|jpg|css|js|ico))
  static_files: \1
  upload: (.*\.(gif|png|jpg|css|js|ico))

代わりにこれを試してください

- url: /(.*\.(gif|png|jpg|css|js|ico)$)
  static_files: \1
  upload: (.*\.(gif|png|jpg|css|js|ico)$)
于 2013-05-29T21:38:58.907 に答える