Articles of node.js

使用Nodejs + SocketIO时丢弃传输错误

我正在构建一个android聊天应用程序。 我在服务器端使用nodejs并尝试使用它实现socketIO的android客户端。 首先,客户端向服务器回送“hello”,服务器将其回送给客户端。 这很好用。 现在有一个Button ,按下时EditText的文本回显到服务器。 服务器应该将文本回送给客户端。 但是,只要文本回显到服务器,我就会在服务器端获得Discarding transport错误,并且不会回显任何内容。 客户无法进一步回应任何事情。 这些代码有什么问题? 服务器 var http = require(‘http’),fs = require(‘fs’); var app = http.createServer(function (req, res) { res.end(); }).listen(8000, ‘127.0.0.1’); var io = require(‘socket.io’).listen(app); io.sockets.on(‘connection’, function(socket) { socket.on(‘echo’, function(data) { socket.emit(‘echoback’, data); }); }); 客户 package com.jack.pri; import java.net.MalformedURLException; import org.json.JSONException; import org.json.JSONObject; import android.os.Bundle; import android.app.Activity; […]

没有对等证书exception – 具有自签名证书的Volley和Android

我正在尝试让我的应用通过https与我的服务器通信。 由于我不想付费以获得由受信任的CA签署的服务器证书,因此解决方案是使用自签名证书。 所以,我创建了我的caconfig.cnf如下: [ ca ] default_ca = CA_default # The default ca section [ CA_default ] dir = ./demoCA # top dir database = $dir/index.txt # index file. new_certs_dir = $dir/newcerts # new certs dir certificate = $dir/cacert.pem # The CA cert serial = $dir/serial # serial no file private_key = $dir/private/cakey.pem # CA […]

将android客户端连接到sails.js

我正在使用nkzawa socket.io android客户端 。 如何将其连接到sails.js服务器? 我尝试了从客户端(iOS和Android)发送套接字请求到Sails.js服务器和Simple Sails.js以及Android示例的方法,但是我的sails服务器上出现以下错误: Running “watch” task Waiting… verbose: A socket is being allowed to connect, but the session could not be loaded. Will create an empty, one-time session to use for the life of the socket connection. Details: Error: Session could not be loaded at _createError (/usr/local/node-v0.12.4-linux-x64/lib/node_modules/sails/lib/hooks/session/index.js:271:21) at Immediate._onImmediate (/usr/local/node-v0.12.4-linux-x64/lib/node_modules/sails/lib/hooks/session/index.js:274:13) at […]

蜂窝数据上的WebRTC连接失败

我正在尝试使用WebRTC使用这些项目创建一个Android应用程序: AndroidRTC 哪个使用此存储库: io.prinstine.libjingle 当两个客户端通过wifi连接到网络时,此项目运行良好,但当其中一个客户端通过蜂窝数据连接时,它不起作用。 我试图find源代码,看看发现了什么,我find了这个静态类: public static class Options { // Keep in sync with webrtc/base/network.h! static final int ADAPTER_TYPE_UNKNOWN = 0; static final int ADAPTER_TYPE_ETHERNET = 1 << 0; static final int ADAPTER_TYPE_WIFI = 1 << 1; static final int ADAPTER_TYPE_CELLULAR = 1 << 2; static final int ADAPTER_TYPE_VPN = 1 << 3; […]

使用AngularJS从服务器重定向时Android上的无限重定向循环

我正在为旧版Android(2.3.x)构建一个web / phonegap应用程序。 在尝试将任何服务器重定向添加到混合中之前,一切都很好用。 这是场景: 服务器(node.js)有一个侦听’/’的路由。 当该路线被击中时,它会检查是否有会话。 如果没有会话,则重定向到/ login。 很好,这部分工作(服务器明智,反正)。 当客户端获得重定向时会出现问题。 因为Android 2.3不支持history.pushState,所以它会回退到hashbangs。 这意味着AngularJS将url重写为/#!/ login,这会导致服务器请求为’/’,这会导致服务器检查会话并重定向到’/ login’,这会导致AngularJS将url重写为/#!/登录..等等……无限期。 有关如何使用AngularJS从服务器重定向的任何想法? 我不应该在我的路线中处理这个逻辑,而是尝试在客户端上实现它吗? 我敢肯定,必须有办法解决这个问题,但我似乎无法弄明白。 任何帮助将不胜感激。 谢谢!!

IOAcknowledge方法不适用于Android中的SocketIO?

我正在使用socketio.jar来建立客户端和服务器之间的连接。 即从我的Android设备(客户端)到节点服务器。 因为我能够成功连接,发送和接收消息到该服务器。 问题是为什么我在向服务器发送消息后没有从套接字获得任何确认 。 有一个callBack接口IOAcknowledge作为参数,它永远不会为我工作/调用。 socket.emit( “sendMessage”, new IOAcknowledge() { @Override public void ack(Object… arg0) { System.out.println(“sendMessage IOAcknowledge” + arg0.toString()); } }, “Hi!! how are you”); 有没有人知道IOAcknowledge何时或如何工作的解决方案? 编辑:我正在使用的套接字库的文档链接。 官方和Github

android客户端解析多部分表单数据到非ascii

你能解释为什么android客户端将多重数据解析为非ascii聊天。 虽然文件上传工作好使用postman这里是我的app.js代码 var multipart = require(‘connect-multiparty’); var apiRoutes = require(‘./routes/apiRoutes’); app.set(‘views’, path.join(__dirname, ‘views’)); app.use(logger(‘dev’)); app.use(bodyParser.json({limit: ’50mb’})); app.use(bodyParser.urlencoded([{extended: false},{ uploadDir:path.join(__dirname, ‘uploads’) }, {parameterLimit:100000}, {limit: ’50mb’}])); app.use(cookieParser()); app.use(express.static(path.join(__dirname, ‘public’))); app.use(express.static(path.join(__dirname, ‘uploads’))); app.use(multipart()); app.use(apiRoutes); 和apiRoutes指向我的上传function包含简单的打印请求param.using postman它工作得很好 console.log(“mediaChat called”, req.body, req.files); 响应 mediaChat called { apiKey: ‘123’ } { media: { fieldName: ‘media’, originalFilename: ‘default.png’, path: ‘/tmp/KFnwsKGp-f4woTaBH6aPR-qa.png’, headers: { […]

UnhandledPromiseRejectionWarning:未处理的承诺拒绝(拒绝ID:1):错误:产生EACCES Ionic 3

我已经在这个问题上工作了很长时间,我无法解决它。 当我做ionic Cordova build android它工作得很好,直到它到达Cordova build android ,任何人都对这里发生的事情有所了解? 我知道如果有权限的问题,但我找不到我要更改的目录 KENRYMAC:RecipeBookApp Kenry$ ionic cordova build android Running app-scripts build: –platform android –target cordova [23:36:09] build dev started … [23:36:10] clean started … [23:36:10] clean finished in 5 ms [23:36:10] copy started … [23:36:10] deeplinks started … [23:36:11] deeplinks finished in 161 ms [23:36:11] transpile started … […]

Apache Cordova和PhoneGap有什么区别?

嗨,我需要开发一个简单的应用程序,这是在kitkat版本的android中运行的混合。 由于可以使用PhoneGap 3.3,我一直在尝试安装它。 但我对安装程序非常困惑。 首先,我在我的Windows 7 32位系统中安装了nodejs。 然后我从phonegap网站运行命令。 这是链接http://phonegap.com/install/我能够创建一个项目。 但我面临一个错误,无法启动模拟器。(我设置了环境variables。) 然后我经历了几个网站,他们说要运行以下命令。 C:> npm install -g cordova 如果我再运行任何进一步的命令,它会要求我安装Apache ANT。 但很多人都说我的手机和手机芯都是一样的。 所以我有点困惑,因为我必须要求我的上级在我的办公室PC上下载和安装软件。 请建议我给我提供这些工作程序的网站。

Google Cloud Messaging(fake_message_id)

我有node.js服务器: var gcm = require(‘node-gcm’); // create a message with default values var message = new gcm.Message(); // or with object values var message = new gcm.Message({ collapseKey: ‘demo’, delayWhileIdle: true, timeToLive: 3, data: { key1: ‘message1’, key2: ‘message2’ } }); var sender = new gcm.Sender(‘AIzaSyChp2jTQsgPkLaaVgFh6yoovu1Td7tuQMo’); var registrationIds = []; // OPTIONAL // add new […]