Google App Engine returns 'Error: Server Error'

Google App Engine returns 'Error: Server Error'

我的应用程序在本地运行并且在 localhost:8080 上运行流畅。在 Google 服务器中执行应用程序时似乎存在问题。

我很确定我缺少一些包,我已经将 cloudstorage 和 requests 包添加到我的 lib 文件夹中。

我只想知道我必须下载哪些并添加到 lib 文件夹,这是我在我的 Python 应用程序中使用的:

import os, sys, requests, csv, urllib2, webapp2                                 
import xml.etree.ElementTree as ET                                              
from datetime import date, timedelta, datetime                                  
from google.appengine.api import app_identity                                   
import cloudstorage as gcs

编辑:

我想我错了,包部分与错误无关。

我在 Stack Trace Sample 中发现了这几行:

Body: "<?xml version='1.0' encoding='UTF-8'?>
<Error>
<Code>AccessDenied</Code>
<Message>Access denied.</Message>
<Details>
Caller does not have storage.objects.create access to bucket bucket.
</Details>
</Error>". Extra info: None.

我实际上是在 Google Cloud Storage 上的一个 csv 文件中写的,这是我的几行可能很重要的代码

        currentFileName = "/bucket/" + self.domain + "_" + self.startDate +"_" \
+ self.endDate +'.csv'

with gcs.open(currentFileName, 'w') as csvfile:                         
            fieldnames = ['ID', 'URL', 'Comments', 'Em...

...
writer = csv.DictWriter(csvfile,fieldnames = fieldnames)            

是不是我Bucket中的文件路径弄错了?我对如何检查它是否也正确创建文件感到有点困惑。

编辑 2:

我需要在某处使用这行代码吗?

    bucket_name = os.environ.get('BUCKET_NAME', app_identity.get_default_gc\
s_bucket_name())  

错误是存储桶目录,获取存储桶名称

bucket_name = os.environ.get('BUCKET_NAME', app_identity.get_default_gc\
s_bucket_name())  

然后将 currentFileName 修改为正确的目录

currentFileName = "/" + bucket_name + "/" + self.domain + "_" + self.startDate +"_" \
+ self.endDate +'.csv'

修复了 500 错误:服务器错误