在PHP中,很容易创建,连接与TCP套接字(http://www.codeproject.com/Tips/418814/Socket-Programming-in-PHP,客户端部分)的交互。
如何在AngularJS中完成此操作? 尝试了以下网站上的模块:https://github.com/BHSPitMonkey/angular-net-sockets,但失败了。这个网站上的一个例子对我有帮助。
修改
如何在控制器中使用它?我收到错误:'工厂必须返回一个值'。
这就是我想要实现的目标:
app.controller('controller', ['$scope', 'netsockets', function ($scope, netsockets) {
$scope.username = "test";
$scope.send_socket = function(){
socket.connect('1.1.1.1','1111');
socket.sendData('hello world');
socket.disconnect();
socket.close();
};
}]);
这是我的工厂:
factory('netsockets', function(NetSocket) {
return {
init: function(){
var socket = new NetSocket({
onConnect: function(){
alert('I\'m connected!');
},
onDisconnect: function(){
alert('I\'m disconnected!');
}
});
}
}
});
答案 0 :(得分:1)
angular.module('myApp.services', []).
factory('MyService', function(NetSocket) {
var socket = new NetSocket({
onConnect: function() {
alert('I\'m connected!');
},
onDisconnect: function() {
alert('I\'m disconnected!');
}
});
socket.connect('1.1.1.1','1111');
socket.sendData('hello world');
socket.disconnect();
socket.close();
});
修改强>
您的工厂不会退货。试试这个:
factory('netsockets', function(NetSocket) {
return new NetSocket({
onConnect: function(){
alert('I\'m connected!');
},
onDisconnect: function(){
alert('I\'m disconnected!');
}
});
});