javascript - 一起使用 gulp-prompt 和 gulp-ftp 吗?

标签 javascript ftp gulp

我有一个 ftp 服务器,用于通过 Grunt 任务进行部署。我现在正在使用 Gulp。

我很快就找到了 gulp-ftp,除了它将 ftp 密码存储在 gulpfile 中...所以我找到了 gulp-prompt,它允许脚本每次都提示。很好。

但是,我在将它们一起使用时遇到问题。我不确定如何以及在何处将 ftp 任务集成到密码提示中:

gulp.task('deploy', function () {
 return gulp.src('build/*')
  .pipe(prompt.prompt({
   type: 'password',
   name: 'pass',
   message: 'Please enter your password'
 }, function(res){
//value is in res.pass
ftp({
  host: 'ftp.mysite.com',
  user: 'mrwonderful',
  pass: res.pass
 });
}))

这显然是错误的,因为它会引发一大堆难以理解的错误。

最佳答案

我以前没有使用过 gulp-prompt。您现在认为 ftp 不是安全的连接方式,并且您的密码发送时未加密?但我让 gulp-ftp 和 gulp 提示正常工作:

gulp.task('deploy', function () {
    return gulp.src('/')//it may be anything
    .pipe(prompt.prompt({
    type: 'password',
    name: 'pass',
    message: 'Please enter your password'
    }, function(res){
        gulp.src(['archive.zip'],{ base: './' })//now you have to target what you want to send
        .pipe(ftp({
            host: 'yourhost',
            user: 'youruser',
            pass: res.pass
        }));
    }));
});

我建议您使用 scp 或 ssh 发送。我在上传之前压缩项目,然后通过 ssh 解压缩它。

关于javascript - 一起使用 gulp-prompt 和 gulp-ftp 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27533424/

相关文章:

javascript - 如何获取 XML 标签内的内容来创建数组?

javascript - 将我的内容更新为 XML 文件

javascript - autoprefixer watch 任务配置

javascript - 使用 asp.net 复选框 oncheckchanged 事件隐藏一个 div

Javascript 模块模式 - Object.create

windows - 在 Windows 中使用 WinSCP 或其他命令行 FTP 客户端的隐式 TLS FTP 连接

c - 使用 libcurl 从 FTP 读取文件

objective-c - 从 iOS 应用程序上传文件到 ftp

css - Compass 与 Gulp 混合

node.js - gulp-sass,当属性名称无效时 watch 停止