我知道这个问题已被多次询问,但我还是不能这样做.所以我错误地安装了"node" sudo apt-get install node
,后来我安装了nodejs(v0.10.37).我尝试用npm更新到v0.12,但是当我这样做时它仍然说0.10.37 nodejs -v
.此外,我不能使用node命令,因为我之前错误地安装了其他"节点事物".我尝试了人们在所有其他答案中谈到的所有不同命令,但我还没有做到.我认为主要的问题是我一直有错误的节点包,并且安装nodejs-legacy不起作用.该npm install
命令也可以工作并创建包含文件的文件夹,但我的应用程序仍然说缺少库.
到目前为止,我已经node.js
通过以下方式创建了类和模块:
var fs = require('fs');
var animalModule = (function () {
/**
* Constructor initialize object
* @constructor
*/
var Animal = function (name) {
this.name = name;
};
Animal.prototype.print = function () {
console.log('Name is :'+ this.name);
};
return {
Animal: Animal
}
}());
module.exports = animalModule;
Run Code Online (Sandbox Code Playgroud)
现在使用ES6,您可以像这样制作"实际"类:
class Animal{
constructor(name){
this.name = name ;
}
print(){
console.log('Name is :'+ this.name);
}
}
Run Code Online (Sandbox Code Playgroud)
现在,首先,我喜欢这个:)但它提出了一个问题.你如何结合node.js
模块结构使用它?
假设您有一个课程,您希望使用模块,以便演示说您想使用 fs
所以你创建你的文件:
Animal.js
var fs = require('fs');
class Animal{
constructor(name){ …
Run Code Online (Sandbox Code Playgroud) 我需要创建一个Web服务,我在服务器中使用Node.js. 但是当我在localhost中运行时,我收到一个错误:
错误:大多数中间件(如bodyParser)不再与Express捆绑在一起,必须单独安装.请参阅https://github.com/senchalabs/connect#middleware.
neo4jtest.js
var config = require('./config');
var bodyParser = require('body-parser');
var app = express();
var neo4jurl = process.env.NEO4J_URL ;
neo4jurl = neo4jurl +'/db/data/';
var query = [ 'START me=node:node_auto_index(name={inputusername}) MATCH me<--friend<--friend_of_friend where (friend_of_friend.entitytype={inputentitytype}) RETURN friend_of_friend;' ];
var insertquery = [ 'CREATE (user {entitytype:{inputentitytype}, name : {inputname}}) return user;' ];
var queryforallrelation = [ 'start n = node:node_auto_index(name={inputusername}) match(n)--(x) return x;'];
// Config
var env = process.env.NODE_ENV || 'development';
if ('development' == env) {
// configure stuff here …
Run Code Online (Sandbox Code Playgroud) 来自Node.js + npm背景,尝试理解与Python包管理相关的所有事情真的很噩梦.经过几个小时的研究,我偶然发现了所有这些关键词:
有人可以帮我解读这些条款并将它们置于历史背景中吗?例如,"distutils是第一个包管理器,但它被Y取代,因为Z".
我非常喜欢Python(语言),但是对于过去几年一直在使用惊人的npm的人来说,包管理似乎是一个真正的噩梦.
我的快速服务器在端口3000上运行,nginx用于反向代理.
req.ip总是返回127.0.0.1,req.ips返回一个空数组
app.enable('trust proxy');
使用/不启用信任代理时,x-forwarded-for不起作用:
var ip_addr = req.headers['X-FORWARDED-FOR'] || req.connection.remoteAddress;
Run Code Online (Sandbox Code Playgroud)
nginx配置:
server { listen 80; server_name localhost; access_log /var/log/nginx/dev_localhost.log; location / { proxy_pass http://localhost:3000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } }
如何获取请求客户端的IP地址?
从OpenCV Node运行示例时出现此错误
return process.dlopen(module, path._makeLong(filename)); ^ Error: /home/sunny/face/build/opencv/v5.0.0/Release/node-v46-linux-x64/opencv.node: undefined symbol: _ZNK2cv9Algorithm5writeERNS_11FileStorageE at Error (native) at Object.Module._extensions..node (module.js:460:18) at Module.load (module.js:356:32) at Function.Module._load (module.js:313:12) at Module.require (module.js:366:17) at require (module.js:385:17) at Object. (/home/sunny/face/lib/bindings.js:4:15) at Module._compile (module.js:435:26) at Object.Module._extensions..js (module.js:442:10) at Module.load (module.js:356:32)
我request
在我的应用程序中使用POST
HTTPS通过客户端身份验证发送请求.请求总是抛出一个错误Error: Invalid URI "/"
,我无法解决它.我尝试使用url.parse而不是传递一个字符串,但它仍然是相同的.
request.post({
uri: 'https://localhost:5000',
key: credentials.key,
ca: credentials.ca,
cert: credentials.cert,
passphrase: credentials.passphrase,
rejectUnauthorized: false
}, { form: { data: payload }});
Run Code Online (Sandbox Code Playgroud) 使用node,express,socket.io,jade和angular.得到错误:TypeError: Cannot read property 'apply' of undefined
.有什么建议?
index.js:
module.exports = function(app, res) {
res.render('index', { title: 'Express' });
var io = app.get('io');
io.on('connection', function(socket){
});
};
Run Code Online (Sandbox Code Playgroud)
index.jade:
extends layout
block content
script.
var app = angular.module('hackigur', []);
var socket = io.connect();
var refreshTimer = 10;
app.controller('UpdateController', function($scope){
//socket.on('update', function(msg){
//$scope.refreshTimer = msg;
//$scope.$apply();
//});
setInterval(secondTick,1000);
function secondTick() {
if(refreshTimer != 0) {
refreshTimer -= 1;
}
$scope.refreshTimer = refreshTimer;
$scope.$apply();
};
});
h1= title
p Welcome to #{title} …
Run Code Online (Sandbox Code Playgroud) 我试图window.crypto.getRandomValues
在nodejs脚本中使用该方法.根据我的理解,window
当我在节点中运行这样的简单代码时,没有元素:
var array = new Uint32Array(10);
window.crypto.getRandomValues(array);
Run Code Online (Sandbox Code Playgroud)
这就是我收到此错误的原因:
ReferenceError: window is not defined
Run Code Online (Sandbox Code Playgroud)
如何在我的代码中使用此方法?
谢谢
我正在使用reader.readAsArrayBuffer()将文件发送到node.js,以便我可以将其保存在/ public文件夹中.
reader.readAsArrayBuffer(event.currentTarget.files[0])
Run Code Online (Sandbox Code Playgroud)
读取完成后,调用Meteor.method()
reader.addEventListener("loadend", function(evt){
Meteor.call("saveFile", reader.result)
})
Run Code Online (Sandbox Code Playgroud)
meteor方法接收文件并将其保存到我的公共/文件夹.
saveFile:function(file){
var fs = Npm.require("fs")
fs.writeFile('../../../../../public/logo/jow.png', file, {encoding:"binary"}, function (err) {
console.log(err)
console.log("file saved")
});
}
Run Code Online (Sandbox Code Playgroud)
但问题是我从来没有得到正确的编码,当在/public/logo/jow.png中打开文件时,我得到以下消息:
jow.png can not be read, it may be damaged.
Run Code Online (Sandbox Code Playgroud)
但是当我将readAsArrayBuffer()更改为readAsBinaryString()时,它按预期工作,我可以打开图像.
有任何想法吗?
node.js ×9
express ×3
javascript ×3
angularjs ×1
cryptography ×1
ecmascript-6 ×1
filereader ×1
https ×1
meteor ×1
nginx ×1
opencv ×1
pip ×1
proxy ×1
python ×1
requestjs ×1
ubuntu-14.04 ×1
virtualenv ×1
web-services ×1