大家度过美好的一天......
我正在开发一个Asp.Net Web应用程序,我必须在其中实现文件上传,但有一点复杂:
为了更好地解释,应用程序在服务器“A”上运行..文件需要上传到完全不同的服务器“B”..
客户端“C”通过站点界面上传文件后,该文件必须实际上传到服务器B.
从技术上讲,我已经实现了这个目标:
但是,通过这样做,实际上文件被传输了两次(C - > A - > B),使得文件上传的用户体验比平常更长。
我的问题是:是否可以通过站点界面(在服务器“A”上运行)打开“C”和“B”之间的“直接”连接,以便执行单次传输?显然,我应该能够在下载过程中做同样的事情。
替代方案(至少在上传期间)应该是通过在服务器“A”上保存临时文件来“隐藏”双重传输,然后将其重新传输到“B”以启动分离的任务,以便用户将能够在“首次”上传后在网站上执行新操作。
非常感谢任何建议(即使是完全不同的解决方案,我会评估与我的项目的“兼容性”)
提前谢谢你,
阿尔贝托
注意:我选择使用FTP,因为客户端必须能够选择他希望放置“B”服务器的位置(他可以使用“我们的”ftp,或者如果有的话,可以在那里发送文件)和我认为FTP是最“兼容”和“快速设置”的解决方案,ftp管理类似于服务器“B”平台。
答案 0 :(得分:0)
目前尚不清楚,您对C的期望是什么样的联系。如果C可以打开与B的直接连接,并且如果服务器A具有访问B的凭据,则该方案可以如下所示:
以上要求您了解FTP协议的详细信息,并且很可能自己将其实现为客户端和服务器。这可能非常耗时。