Java 让两台服务器互相对话
我的应用程序是用GWT编写的,托管在Google AppEngine/Java上。在此应用程序中,用户可以选择将视频/音频/文本文件上载到服务器。这些文件可能很大,高达1gb左右,因为GAE/J不支持大文件,所以我必须使用另一台服务器来存储这些文件。如果浏览器中没有跨域安全特性,这将很容易实现。所以,我的想法是让GAE服务器与我的服务器(Glassfish或任何其他java服务器,如果需要)对话,告诉文件的url,如果可能的话,发送上传文件的状态(上传的百分比),这样我就可以在客户端屏幕上显示状态。这是我想做的 当用户加载存储在GAE/J上的GWT页面时,他/她会将文件上载到我的服务器,然后我的服务器会将响应发送回GAE,GAE会将响应发送到客户端。Java 让两台服务器互相对话,java,google-app-engine,client-server,cross-domain,Java,Google App Engine,Client Server,Cross Domain,我的应用程序是用GWT编写的,托管在Google AppEngine/Java上。在此应用程序中,用户可以选择将视频/音频/文本文件上载到服务器。这些文件可能很大,高达1gb左右,因为GAE/J不支持大文件,所以我必须使用另一台服务器来存储这些文件。如果浏览器中没有跨域安全特性,这将很容易实现。所以,我的想法是让GAE服务器与我的服务器(Glassfish或任何其他java服务器,如果需要)对话,告诉文件的url,如果可能的话,发送上传文件的状态(上传的百分比),这样我就可以在客户端屏幕上显示状
如果可能出现这种情况,那么实现GAE到Glassfish对话的最佳方式是什么?实际上在此之前,您可以尝试使用第一种方法,即使用iframe传递浏览器的跨域安全性。有一些现成的组件用于此,但对于您的问题,我不知道其中哪一个可以使用。只需谷歌搜索这些组件…按照您建议的原始方式进行操作 另一种方法的缺点是,在网页中引入对多个站点的依赖关系。
使用URL获取服务的缺点是,您必须在达到免费配额后按传输的字节数付费。一个选项是等待-blobstore限制并不总是50MB 不过,如果您赶时间,我建议您采用以下方法: