我不完全理解我应该如何获得远程用户IP地址.
假设我有一个简单的请求路由,例如:
app.get(/, function (req, res){
var forwardedIpsStr = req.header('x-forwarded-for');
var IP = '';
if (forwardedIpsStr) {
IP = forwardedIps = forwardedIpsStr.split(',')[0];
}
});
Run Code Online (Sandbox Code Playgroud)
上述方法是否正确获取真实用户IP地址还是有更好的方法?那些代理呢?
我需要将文件写入以下路径:
fs.writeFile('/folder1/folder2/file.txt', 'content', function () {
});
Run Code Online (Sandbox Code Playgroud)
但'/folder1/folder2'路径可能不存在.所以我收到以下错误:
message=ENOENT, open /folder1/folder2/file.txt
Run Code Online (Sandbox Code Playgroud)
如何将内容写入该路径?
我有以下简单的shema:
var userSchema = new Schema({
name : String,
age: Number,
_creator: Schema.ObjectId
});
var User = mongoose.model('User',userSchema);
Run Code Online (Sandbox Code Playgroud)
我想要做的是创建新文档并返回到客户端,但我想从一个中排除'creator'字段:
app.post('/example.json', function (req, res) {
var user = new User({name: 'John', age: 45, _creator: 'some ObjectId'});
user.save(function (err) {
if (err) throw err;
res.json(200, {user: user}); // how to exclude the _creator field?
});
});
Run Code Online (Sandbox Code Playgroud)
最后,我想发送没有_creator字段的新创建用户:
{
name: 'John',
age: 45
}
Run Code Online (Sandbox Code Playgroud)
是否可以在没有额外发现请求的情况下制作猫鼬?
PS:最好是通过它
我使用nodejs + express制作了简单的nodejs应用程序.现在我想让用户认证.我想通过使用mongoose实现会话处理.你能举个例子吗?
假设我得到这样的路线:
app.get('/documents/format/type', function (req, res) {
var format = req.params.format,
type = req.params.type;
});
Run Code Online (Sandbox Code Playgroud)
所以如果我提出要求的话
http://localhost:3000/documents/json/mini
Run Code Online (Sandbox Code Playgroud)
在我的格式和类型变量将分别是'json'和'mini',但如果我提出请求
http://localhost:3000/documents/mini/json
Run Code Online (Sandbox Code Playgroud)
不.所以我的问题是:如何以不同的顺序获得相同的变量?
当我使用mongoose时,我发现了两种在nodejs中创建新文档的方法.
第一:
var instance = new MyModel();
instance.key = 'hello';
instance.save(function (err) {
//
});
Run Code Online (Sandbox Code Playgroud)
第二
MyModel.create({key: 'hello'}, function (err) {
//
});
Run Code Online (Sandbox Code Playgroud)
有什么区别吗?
初始化select2后,我需要设置一个数据数组.所以我想做这样的事情:
var select = $('#select').select2({});
select.data([
{id: 1, text: 'value1'},
{id: 1, text: 'value1'}
]);
Run Code Online (Sandbox Code Playgroud)
但是我收到以下错误:
当附加到元素时,Select2不允许使用选项'data'.
我的HTML:
<select id="select" class="chzn-select"></select>
Run Code Online (Sandbox Code Playgroud)
我应该使用什么而不是选择元素?
我需要设置搜索项目的来源
给出以下数组:
var arr = [undefined, undefined, 2, 5, undefined, undefined];
Run Code Online (Sandbox Code Playgroud)
我想获得哪些元素的计数的定义(即:那些不 undefined).除了遍历数组之外,还有一个很好的方法吗?
我有兴趣在云中托管nodejs应用程序,我正在为我的目的寻找免费的云托管.我发现亚马逊有一个,但我有以下问题:是否有任何关于如何在Amazon EC2中设置和运行nodejs应用程序的教程?
编辑:你能为nodejs提供任何好的托管服务(heroku除外)吗?
node.js ×7
express ×4
javascript ×3
mongoose ×3
amazon-ec2 ×1
file ×1
file-io ×1
hosting ×1
ip ×1
ip-address ×1
jquery ×1
mongodb ×1
undefined ×1