小编Pon*_*ono的帖子

如何在控制台关闭时永远运行node.js应用程序?

我通过ssh连接到我的远程服务器.然后我用Forever启动我的node.js应用程序.一切正常,直到我关闭我的控制台窗口.即使我通过ssh关闭连接,如何在我的远程服务器上运行node.js app FOREVER?我只是想启动一个应用程序并关闭我的copmputer.我的应用程序应该在远程服务器的后台运行.

node.js

53
推荐指数
5
解决办法
6万
查看次数

node.js以redis格式存储对象

这是事情 - 我想在redis下的某个键下存储本机JS(node.js)对象(flash套接字引用).当我这么做时,client.set()它被存储为一个字符串.当我试图获得价值时,我得到[object Object]- 只是一个字符串.

有机会让这个工作吗?这是我的代码:

  addSocket : function(sid, socket) {
    client.set(sid, socket);
  },

  getSocket : function(sid) {
    client.get(sid, function(err, reply) {
      // cant't get an object here. All I get is useless string
    });
  },
Run Code Online (Sandbox Code Playgroud)

object redis node.js

47
推荐指数
4
解决办法
5万
查看次数

Socket.io:WebSockets可以处理多少个并发连接?

我想知道你是否有关于websockets的并发连接的任何数据?我在Node.js服务器上使用Socket.io.有多少客户端可以连接到套接字并接收数据而无需关闭服务器?1000?1000.0000?

谢谢!

node.js socket.io

41
推荐指数
2
解决办法
4万
查看次数

Node.js www - 非www重定向

有没有机会以某种方式将www重定向到node.js中的非www URL?由于节点Web服务器中没有htaccess,我很好奇如何做到这一点.

node.js express

36
推荐指数
3
解决办法
1万
查看次数

Node.js和Express会话处理 - 后退按钮问题

我的Express应用程序中有一个禁区"/仪表板".我使用一个非常小的函数来限制访问:

app.get('/dashboard', loadUser, function(req, res){
  res.render('dashboard', {
    username: req.session.username
  });
});

function loadUser(req, res, next){
  if (req.session.auth) {
    next();
  } else {
    res.redirect('/login');
  }
};
Run Code Online (Sandbox Code Playgroud)

问题是当我通过调用注销用户时...

app.get('/logout', function(req, res){
  if (req.session) {
    req.session.auth = null;
    res.clearCookie('auth');
    req.session.destroy(function() {});
  }
  res.redirect('/login');
});
Run Code Online (Sandbox Code Playgroud)

...会话被杀死但是当我在浏览器中点击Back Button时,我从浏览器的缓存中获得了受限制的页面.这意味着'/ dashboard'上没有GET,也没有用户登录验证.

我尝试在元(Jade模板)中使用no-cache,但它仍然不起作用.

meta(http-equiv='Cache-Control', content='no-store, no-cache, must-revalidate')
meta(http-equiv='Pragma', content='no-cache')
meta(http-equiv='Expires', content='-1')
Run Code Online (Sandbox Code Playgroud)

任何人?

session node.js express

17
推荐指数
2
解决办法
2万
查看次数

Node.js和Request - 限制下载文件的文件大小

我想用Request库下载一个文件.这非常简单:

request({
    url: url-to-file
}).pipe(fs.createWriteStream(file));
Run Code Online (Sandbox Code Playgroud)

由于URL是由用户提供的(在我的例子中),我想限制我的应用程序将下载的最大文件大小 - 比方说10MB.我可以依赖这样的content-length标题:

request({
    url: url-to-file
}, function (err, res, body) {
    var size = parseInt(res.headers['content-length'], 10);

    if (size > 10485760) {
        // ooops - file size too large
    }
}).pipe(fs.createWriteStream(file));
Run Code Online (Sandbox Code Playgroud)

问题是 - 这有多可靠?我想这个回调将在文件下载调用,对吧?但是,如果有人提供1 GB的文件URL,那就太晚了.我的应用程序将首先下载这个1 GB的文件,只是为了检查(在回调中)这个太大了.

我也在考虑好的旧Node http.get()方法.在这种情况下,我会这样做:

var opts = {
    host: host,
    port: port,
    path: path
};

var file = fs.createWriteStream(fileName),
    fileLength = 0;

http.get(opts, function (res) {
    res.on('data', function (chunk) {
        fileLength += chunk.length;

        if (fileLength > …
Run Code Online (Sandbox Code Playgroud)

javascript node.js

14
推荐指数
1
解决办法
7332
查看次数

Chrome扩展程序开发 - POST到新标签页

是否有一个简单的解决方案将动态聚合数据POST到新选项卡中?

chrome.tabs.create没有'POST'选项.通常我会用

chrome.browserAction.onClicked.addListener(function (t) {
  chrome.tabs.create(
  {
    "url" : "http://super.url",
    "method" : "POST" // oops.. no option.
  });
});
Run Code Online (Sandbox Code Playgroud)

javascript google-chrome google-chrome-extension

13
推荐指数
2
解决办法
1万
查看次数

我应该在文件/模块之间共享Redis连接吗?

我正在开发一个node.js应用程序,我需要使用大量的Redis.该应用程序将cluster在8个CPU核心上运行.

现在我有100个并发连接到Redis,因为每个CPU的每个工作程序都有几个模块在运行require('redis').createClient().

情景A:

file1.js:

var redis = require('redis').createClient();
Run Code Online (Sandbox Code Playgroud)

file2.js

var redis = require('redis').createClient();
Run Code Online (Sandbox Code Playgroud)

情景B:

redis.js

var redis = require('redis').createClient();

module.exports = redis;
Run Code Online (Sandbox Code Playgroud)

file1.js

var redis = require('./redis');
Run Code Online (Sandbox Code Playgroud)

file2.js

var redis = require('./redis');
Run Code Online (Sandbox Code Playgroud)

哪种方法更好:在我介绍的每个新文件中创建新的Redis实例(方案A)或全局创建一个Redis连接(方案B)并在我拥有的所有模块之间共享此连接.每种解决方案的缺点/好处是什么?

提前致谢!

redis node.js

13
推荐指数
2
解决办法
3307
查看次数

"使用CoreImage,此类不符合关键值编码"

我正在使用Swift中的一个简单的MacOS 命令行应用程序.我创建了一个自定义CoreImage过滤器,并且使用它有麻烦.代码编译得很好但是当它运行时退出时出现以下错误:

***由于未捕获的异常'NSUnknownKeyException'终止应用程序,原因:'[setValue:forUndefinedKey:]:此类不是键输入映像的键值编码兼容.

任何有关此问题的帮助将不胜感激.尝试在SO上搜索答案,但由于我的应用程序不使用Storyboard或Outlets(它是纯粹的命令行),遗憾的是我无法自拔.

我的程序在这一行上打破了:

filter.setValue(inputImage, forKey: kCIInputImageKey)
Run Code Online (Sandbox Code Playgroud)

这是我正在使用的代码:

class CustomFilter:CIFilter {
    var inputImage:CIImage?

    let kernelString = CIKernel(string:
        "kernel vec4 chromaKey( __sample s) { \n" +
            "  vec4 newPixel = s.rgba;" +
            "  newPixel[0] = 0.0;" +
            "  newPixel[2] = newPixel[2] / 2.0;" +
            "  return newPixel;\n" +
        "}"
    )

    override var outputImage:CIImage! {
        guard
            let inputImage = inputImage
        else {
            return nil
        }

        let extent = inputImage.extent

        let blur = kernelString?.apply(
            withExtent: extent,
            roiCallback: {
                (index, rect) in …
Run Code Online (Sandbox Code Playgroud)

macos core-image swift

10
推荐指数
1
解决办法
2008
查看次数

Node.js - 使用XHR进行强大的上传

我尝试实现一个简单的XHR上传到Node.js(通过Formidable).问题是,如果我设置

xhr.setRequestHeader("Content-Type", "multipart/form-data");
Run Code Online (Sandbox Code Playgroud)

节点给我错误:

Error: bad content-type header, no multipart boundary
Run Code Online (Sandbox Code Playgroud)

如果我将边界设置为随机字符串没有任何反应.浏览器只挂起POST并等待服务器响应.

关键是如果我使用带有常规同步POST的强大功能,一切正常.

有人试图在XHR上传时使用Formidable吗?

xmlhttprequest node.js

9
推荐指数
1
解决办法
9313
查看次数