Google App Engine中的内部服务器错误500(通过重新部署暂时得到修复)

时间:2016-07-17 14:06:57

标签: java python google-app-engine internal-server-error http-error

我正在创建这个应用程序,它使用名为gspread的库从Google Spreadsheet获取数据。 这是我用来从我的电子表格中获取数据的代码(在python中):

json_key = json.load(open('service.json'))
scope = ['https://spreadsheets.google.com/feeds']
credentials = SignedJwtAssertionCredentials(json_key['client_email'], json_key['private_key'], scope)
self.gc = gspread.authorize(credentials)
self.sheet = self.gc.open('Order Database').sheet1
self.menuSheet = self.gc.open('Menu and Stocking').sheet1
return self.menuSheet.get_all_values()

一开始代码工作正常,我使用的是OAuth 2.0客户端ID。 后来当我使用我的Android应用程序时,为了从该网址上获取数据,我开始收到内部服务器500错误,我甚至可以从我的网站其他部分工作正常的chrome访问该网址。在搜索解决方案时,我发现有人说要使用API​​密钥,所以我创建了一个服务器密钥,甚至使用了它,这是android代码:

HttpClient client = new DefaultHttpClient();
HttpGet request =new HttpGet(url);
request.addHeader("x-api-key",apikey);
HttpResponse response = client.execute(request);
BufferReader rd = new BufferReader(new InputStreamReader(response.getEntity().getContent()));
String line = rd.readLine();

代码工作正常,至少这就是我的想法。每次我收到内部服务器错误500,如果我再次部署它,它开始工作正常,但只有一段时间,很快它开始显示相同的错误。通过我的项目的仪表板,我发现了错误的一些细节,所以我也会在这里包括:

HTTPError: 401: <HTML> <HEAD> <TITLE>Unauthorized</TITLE> </HEAD> <BODY BGCOLOR="#FFFFFF" TEXT="#000000"> <H1>Unauthorized</H1> <H2>Error 401</H2> </BODY> </HTML>
at request (/base/data/home/apps/s~gowcanteen/1.394247265273324301/lib/gspread/httpsession.py:75)
at get (/base/data/home/apps/s~gowcanteen/1.394247265273324301/lib/gspread/httpsession.py:79)
at get_cells_feed (/base/data/home/apps/s~gowcanteen/1.394247265273324301/lib/gspread/client.py:250)
at getMenuItems (/base/data/home/apps/s~gowcanteen/1.394247265273324301/server.py:24)
at API_MENU (/base/data/home/apps/s~gowcanteen/1.394247265273324301/main.py:61)
at dispatch_request (/base/data/home/apps/s~gowcanteen/1.394247265273324301/lib/flask/app.py:1461)
at full_dispatch_request (/base/data/home/apps/s~gowcanteen/1.394247265273324301/lib/flask/app.py:1475)
at handle_user_exception (/base/data/home/apps/s~gowcanteen/1.394247265273324301/lib/flask/app.py:1381)
at full_dispatch_request (/base/data/home/apps/s~gowcanteen/1.394247265273324301/lib/flask/app.py:1477)
at wsgi_app (/base/data/home/apps/s~gowcanteen/1.394247265273324301/lib/flask/app.py:1817)

我是开发新手,对OAuths和Credentials知之甚少,因此可能存在我不知道的问题,这就是为什么无法找到问题并修复它的原因。我已经添加了一些我能想到的可能与此问题有关的内容,所以请求您的帮助。

你们中的一些人可能会认为这个问题是重复的,我知道还有其他人有类似的问题。我查了一下,可能是因为我缺乏知识,但我无法解决我的问题。我会把它想象成代码中的一个问题但是为什么再次部署它会解决问题呢?并且有些人建议使用API​​ Key或我所做的凭据,所以如果我以错误的方式应用它,请纠正我。很抱歉这个问题太长了。

0 个答案:

没有答案