关于如何上传到Blobstore的blobstore document 之后。它显示了通过JSP + Servlet方法上传。
由于我的应用程序基于GWT,我需要调整for GWT RPC(而不是JSP)。
所以在我的应用程序RPC服务实现中:
public class MyServiceImpl extends RemoteServiceServlet implements
MyService {
public String getUploadUrl() {
BlobstoreService blobstoreService = BlobstoreServiceFactory.getBlobstoreService();
return blobstoreService.createUploadUrl("/upload")
}
}
这是正确的方法还是有其他方法可以正确地做到这一点?我没有尝试过这段代码。
将上传的二进制文件范围从最大字节数到2MB
关于如何上传到Blobstore的blobstore document 之后。它显示了通过JSP + Servlet方法上传。
由于我的应用程序基于GWT,我需要调整for GWT RPC(而不是JSP)。
所以在我的应用程序RPC服务实现中:
public class MyServiceImpl extends RemoteServiceServlet implements
MyService {
public String getUploadUrl() {
BlobstoreService blobstoreService = BlobstoreServiceFactory.getBlobstoreService();
return blobstoreService.createUploadUrl("/upload")
}
}
这是正确的方法还是有其他方法可以正确地做到这一点?我没有尝试过这段代码。
将上传的二进制文件范围从最大字节数到2MB
当我试用这段代码时,这是服务器端控制台日志:
May 07, 2012 6:35:53 AM com.google.appengine.tools.development.LocalResourceFileServlet doGet
WARNING: No file found for: /crossdomain.xml
然后在客户端GWT.log上,Rpc能够生成一个URL,但它不起作用:
[INFO] [blobrpc] - Success fetch upload url: http://127.0.0.1:8888/_ah/upload/aglub19hcHBfaWRyGwsSFV9fQmxvYlVwbG9hZFNlc3Npb25fXxgDDA
答案 0 :(得分:2)
createUploadUrl()
创建一个期望带有内容类型标头multipart/form-data
的HTTP POST的Url。
如果要使用GWT-RPC,则需要使用Blobstore FileService API在服务器端创建文件。
答案 1 :(得分:0)
如果我们要将文件发布到该URL,它将保存在blobstore中。但请注意,本地开发Web服务器的默认URL为http://127.0.0.1:8888/,而blobstore生成的URL为http://:8888 /。这将导致以后出现问题,出于安全原因,Plupload将无法将文件POST到另一个域。这只发生在本地开发服务器上,发布的应用程序只有一个URL。通过编辑Eclipse中的运行配置来修复它,将-bindAddress添加到参数中。这将导致本地开发服务器在http://:8888 /上托管Web应用程序。您可能需要在GWT浏览器插件中允许它在此更改后加载应用程序。