【发布时间】:2017-08-05 14:37:17
【问题描述】:
我正在我的浏览器中为学校构建一个 SFTP 客户端。我正在使用节点包 ssh2 并且能够让我的代码在终端中工作。我可以使用代码连接和读取该服务器中的目录和文件。但是,我无法通过浏览器中的 HTML 部分执行代码。我收到错误“不支持绑定”。 我正在使用角度和浏览器。因为 ssh2 包是服务器端的,所以我必须使用 browserify 才能在需要的 JavaScript 文件顶部“要求”它。 有没有人在他们的浏览器中使用过 ssh2 包?我在想绑定错误消息告诉我这个包只能在终端中工作,但我想确定一下。这是我的代码...
控制器:
"use strict";
module.exports = function($scope) {
$scope.connect = function(){
let Client = require('../../lib/node_modules/ssh2-sftp-client');
let sftp = new Client();
sftp.connect({
host: 'test.rebex.net',
port: '22',
username: 'user',
password: 'password'
}).then(() => {
var remoteServerFolders = sftp.list('/');
console.log("remoteServerFolders", remoteServerFolders);
return remoteServerFolders;
}).then((data) => {
console.log('the data info', data);
sftp.end();
}).catch((err) => {
console.log('catch error', err);
});
};
};
app.js:
"use strict";
let angular = require("../lib/node_modules/angular/");
let app = angular.module("SftpApp", ['ngRoute']);
require("../lib/node_modules/angular-route/angular-route.min.js");
require("./factories/");
require("./controllers/");
app.config(function($routeProvider){
$routeProvider.
when('/', {
templateUrl: 'partials/connect.html',
controller:"ConnectingCtrl"
});
});
HTML:
<h1>Connect to an SFTP server</h1>
<div ng-controller="ConnectingCtrl">
<button type="button" class="btn btn-default" ng-click="connect()">Connect</button>
</div>
【问题讨论】:
标签: javascript angularjs node.js