Я сделаю чат в реальном времени для приложения для Android, я думаю об использовании NodeJS и websockets, но раньше я не использовал эту технологию, и у меня возникли проблемы, чтобы начать с нее
Я уже установил nodejs из консоли (я использую Archlinux)
когда я запускаю свой index.js, консоль (в возвышенном тексте) выдает этот журнал ошибок:
[Errno 2] No such file or directory: 'jsc'
[cmd: ['jsc', '/srv/http/NodeJsApplication/index.js']]
[dir: /srv/http/NodeJsApplication]
[path: /bin:/usr/bin:/usr/local/bin:/usr/local/sbin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl]
[Finished]
Файл package.json выглядит следующим образом:
{
"name": "nodejsapplication",
"version": "1.0.0",
"description": "NodeJS chat for Android application",
"main": "index.js",
"scripts": {
"start": "index.js",
"test": "make test"
},
"keywords": [
"nodejs",
"npm",
"chat_application"
],
"author": "JProg",
"license": "ISC",
"dependencies": {
"express": "^4.16.3",
"socket.io": "^2.1.0"
}
}
Я уже установил express и NodeJS
У меня нет опыта в этой технологии.
Вот код index.js
const http = require('http');
const hostname = '127.0.0.1';
const port = 3000;
const server = http.createServer((req, res)=>{
res.statusCode=200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hola mundo\n');
});
server.listen(port, hostname, ()=>
console.log('Server running at http://${hostname}:${port}');
);
Проблема может заключаться в установке узла. Проверьте, есть ли node --version
.
Также в вашем пакете.json под scripts
=> "start": "node index.js"
. Используете ли вы IDE для запуска приложения из него, если это так, проверьте, может ли он найти путь к узлу.
npm start
), а также проверьте, правильно ли он установлен. Т.е. node --version
Я сделал переустановить NodeJS и снова создать проект. У меня также были некоторые ошибки в моем коде, вот те изменения, которые я сделал:
"scripts": {
"test": "make test",
"start": "node index.js"
}
И index.js
var port = 8080;
var hostname = 'localhost';
var express = require('express');
var app = express();
var server = require('http').Server(app);
var io = require('socket.io')(server);
server.listen(port, hostname, 500, function(){
console.log('Executing server on http://localhost:8080');
});
Теперь он ворует
index.js
ли вы добавить, что находится внутриindex.js
?