我有一个文件服务器和一个Web服务器。它们在物理上不同的机器上运行。
我想通过JavaScript从FTP服务器下载文件。我必须通过JavaScript实现它的原因是我有一个外部应用程序,我只能将JavaScript注入该应用程序。
基本上,我需要指定ftp地址用户名和密码。但我担心安全性,因为人们可以查看FTP凭据。
实施此类方案的最佳方法是什么?
感谢您的帮助
此致
答案 0 :(得分:9)
Javascript只会说HTTP和WebSockets(在较新的浏览器上),而不是FTP。在这种情况下,将其全部保留在客户端,您可能必须编写一个处理实际FTP协议的Flash或Java小程序,并与Javascript交互以提供交互性。
除非您计划将浏览器重定向到ftp站点,否则请传递用户名和密码?您是否担心用户获取FTP信息,或者您是否担心抄袭明文FTP凭据的中间人攻击?
答案 1 :(得分:1)
JavaScript不支持FTP。您需要的是访问远程服务器的服务器端或更强大的客户端语言。
答案 2 :(得分:1)
如果通过“下载”表示“提示用户从外部链接保存文件”(这基本上意味着打开一个带有指向文件的URL的新窗口),那么您可以将用户指向您可以控制的脚本
window.open('http://myserver/get_file/filename');
您的服务器端get_file
脚本将完成连接FTP和获取文件的所有工作
答案 3 :(得分:0)
如何创建iframe并将网址设置为ftp://whatever?