1

我正在寻找将 XML 文件从网页上传到 GAE DataStore 的最佳方式。XML 稍后将通过 Web 界面进行解析和修改。到目前为止,我正在使用form带有文件类型的 HTML input

<form enctype="multipart/form-data" action="update" method="post" > 
  <input type="file" name="myfile" /> 
  <input type="submit" /> 
</form>

在 servlet 类中,我使用 for 循环将数据读入String

InputStream input = req.getInputStream();
StringBuffer sb = new StringBuffer(""); 

int c = -1;
while ( (c = input.read() ) != -1 ) 
{
  char ch = (char) c;
  sb.append( ch );
}

然后我检查 DataStore 是否包含具有应用程序硬编码键值的实体,如果没有,我创建一个新实体并将 XML 上传到Text( com.google.appengine.api.datastore.Text),否则我创建一个新实体并将文件放在那里。这就是你可以称之为好方法的东西吗?

问候, STeN

4

1 回答 1

2

如果您使用带type="file"字段的 html 表单,则浏览器将通过 http POST 上传带有multipart/form-datacontent type的文件。

请参阅 AppEngine 文档,了解如何正确处理多部分内容数据

于 2012-04-04T13:50:53.783 回答