嗨,我正在开发IOS应用程序。我也使用JSON Web服务。并且我还使用Google App Engine for python。我对Python和谷歌应用程序引擎非常陌生。我无法弄清楚这个问题;从iOS应用程序中保存Google应用程序引擎base64照片
我发送json中的base64图像和其他信息。我想将其他信息保存到数据库(GQL)并保存到图像谷歌文件文件夹(Blob Store)中,并将此照片url与其他信息保存在Google数据库中。
你能帮我感谢名单
修订
import cgi
import datetime
import time
import urllib
import wsgiref.handlers
import os, urllib2, re, base64
import simplejson as json
from google.appengine.ext import db
from google.appengine.api import users,images, files
from google.appengine.ext import webapp
from google.appengine.ext import blobstore
from google.appengine.ext.webapp.util import run_wsgi_app
from google.appengine.ext.webapp import template
from google.appengine.ext import blobstore
from google.appengine.ext.webapp import blobstore_handlers
import logging
class PanoMessages(db.Model):
first_name=db.StringProperty();
last_name=db.StringProperty();
msg_text=db.TextProperty();
photo_url=blobstore.BlobReferenceProperty();
class IOSDeneme(webapp.RequestHandler):
def post(self):
received_content = self.request.body;
try:
decoded_json = json.loads(received_content);
panoMsg=PanoMessages();
panoMsg.photo_url=save_image_to_blobstore(decoded_json["picture"],"image/png");
panoMsg.first_name=decoded_json["first_name"];
panoMsg.last_name=decoded_json["last_name"];
panoMsg.msg_text=decoded_json["msg_text"];
panoMsg.put();
self.response.out.write(json.dumps({'StatusCode':'2', 'StatusMessage':'OK'}));
except ValueError:
logging.error("json-time sent data which simplejson couldn't parse")
self.response.out.write(json.dumps({'StatusCode':'4', 'StatusMessage':'NO'}));
def save_image_to_blobstore(base64str, mimeType):
from google.appengine.api import files
import binascii
fileName1 = files.blobstore.create(mime_type=mimeType)
with files.open(fileName1, 'a') as f:
f.write(binascii.a2b_base64(base64str))
files.finalize(fileName1)
return files.blobstore.get_blob_key(fileName1)
您是否设法将图像从前端传递给python作为后JSON请求? – topless
你有没有考虑过从应用程序直接发送图像到Blobstore? Blobstore网络服务旨在接受潜在的大量数据(例如照片上传),将照片直接发送到Blobstore可能会更高效,一旦您知道成功,您可以使用照片元数据向您的应用发送单独的请求。 https://developers.google.com/appengine/docs/python/blobstore/overview –