Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 应用程序引擎Blobstore-我可以做什么来限制用户可以上载的文件的大小?_Java_Google App Engine_Blobstore - Fatal编程技术网

Java 应用程序引擎Blobstore-我可以做什么来限制用户可以上载的文件的大小?

Java 应用程序引擎Blobstore-我可以做什么来限制用户可以上载的文件的大小?,java,google-app-engine,blobstore,Java,Google App Engine,Blobstore,如何限制可上载文件的大小?我知道我可以用SWFUpload限制它的客户端,但是我如何限制它的服务器端呢 我如何防止有人上传1GB文件并吃掉我的配额 在调用数据存储API之前,将下面的代码放在接收数据的serlet中 // Determine the HTTP method long maxSize = 1024*1024 * 50; //Limit 50 MB boolean isPostMethod = request.getMethod().equals("POST"); // Verif

如何限制可上载文件的大小?我知道我可以用SWFUpload限制它的客户端,但是我如何限制它的服务器端呢


我如何防止有人上传1GB文件并吃掉我的配额

在调用数据存储API之前,将下面的代码放在接收数据的serlet中

// Determine the HTTP method
long maxSize = 1024*1024 * 50; //Limit 50 MB
boolean isPostMethod = request.getMethod().equals("POST");

// Verify the content length
int contentLength = request.getContentLength();
if (isPostMethod && (contentLength < 0 || contentLength > maxSize))
  //posted data size is not in acceptable range
else {
    // Process Data
}
//确定HTTP方法
长最大尺寸=1024*1024*50//限制50 MB
布尔值isPostMethod=request.getMethod().equals(“POST”);
//验证内容长度
int contentLength=request.getContentLength();
if(isPostMethod&(contentLength<0 | | contentLength>maxSize))
//过帐数据大小不在可接受范围内
否则{
//过程数据
}

你不能禁止人们上传太大的文件(尽管这会是一个好主意)。您可以做的是检查上传的blob的大小,如果它太大,则立即将其删除。

引入了一个选项来指定blob上传大小的限制


请参见类的
maxUploadSizeBytes
maxUploadSizeBytes

正如OP所说,这是使用应用程序引擎blobstore API,因此不适用。他将从何处调用blobstore API?从servlet内部?你能告诉我哪一行代码不适用于App Engine吗?如果你阅读blobstore上的文档(与数据存储不同),你会发现上面的任何一行都不适用-你的servlet不接受来自用户的数据,blobstore接受。用户提交的表单直接进入blobstore,而不是servlet。我提出了一个功能要求-