【发布时间】:2012-07-10 21:35:26
【问题描述】:
我一直在努力将照片图像从 android 上传到 python appengine 这是我在 Android 中尝试过的:
void apachePost() throws Exception {
File image = new File("/sdcard/image.jpg");
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://clockinapple.appspot.com/upload");
try {
MultipartEntity entity = new MultipartEntity();
entity.addPart("type", new StringBody("photo"));
entity.addPart("data", new FileBody(image));
httppost.setEntity(entity);
HttpResponse response = httpclient.execute(httppost);
Log.v(Constants.DATA, "received http response " + response);
} catch (ClientProtocolException e){
}
}
在应用引擎中:
class UserPhoto(db.Model):
user = db.StringProperty()
blob_key = blobstore.BlobReferenceProperty()
class UploadHandler(blobstore_handlers.BlobstoreUploadHandler):
def post(self):
upload = self.get_uploads()[0]
user_photo = UserPhoto(user="test", blob_key=upload.key())
db.put(user_photo)
return user_photo.key()
我记录的服务器错误是“Apache-HttpClient/UNAVAILABLE (java 1.4)”
我认为标题不正确 - 我尝试了很多变体
已经尝试了一些链接: Ika Lan's snippet
我真的很感谢任何帮助,我似乎没有在 atm 提出正确的问题
【问题讨论】:
-
你需要通过调用blobstore.get_upload_url('/upload_handler')来获取上传url。我没有看到你这样做。
-
感谢 Stuart,图片正在上传,但我仍然收到此错误“Apache-HttpClient/UNAVAILABLE (java 1.4)”我应该担心还是忽略它?问候
-
我什至不知道那个错误是什么意思:) 你在哪里看到的?在客户端还是在应用日志中?
标签: android google-app-engine mime-types