小编Jus*_*oud的帖子

如何使用Request js(Node js Module)池

有人可以解释如何使用request.js池哈希?

关于池的github笔记说:

pool - 包含这些请求的代理的哈希对象.如果省略,则此请求将使用设置为节点的默认maxSockets的全局池.

pool.maxSockets - 包含池中最大套接字数量的整数.

我有这个代码写入CouchDB实例(注意问号).基本上,连接到我的节点服务器的任何用户都将相互独立地写入数据库:

var request = require('request');

request({
    //pool:,     //  ??????????????????
    'pool.maxSockets' : 100,  //  ??????????????????
    'method' : 'PUT',
    'timeout' : 4000,
    'strictSSL' : true,
    'auth' : {
        'username' : myUsername,
        'password' : myPassword
    },
    'headers' : {
        'Content-Type': 'application/json;charset=utf-8',
        'Content-Length': myData.length
    },
    'json' : myData,
    'url': myURL
}, function (error, response, body){
    if (error == null) {
        log('Success: ' + body);
    }
    else {
        log('Error: ' + error);
    }
});
Run Code Online (Sandbox Code Playgroud)

什么是最佳的高吞吐量/性能? …

node.js

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

使用node.js解密AES256会返回错误的最终块长度

使用此Gist,我能够在Node.js 0.8.7中成功解密AES256.然后当我升级到Node.js 0.10.24时,我现在看到这个错误:

TypeError:错误:0606506D:数字包络例程:EVP_DecryptFinal_ex:
Decipheriv.Cipher.final中的最终块长度错误(crypto.js:292:27)

以下是Gist的解密代码(为方便起见,此处显示):

var crypto = require('crypto');

var AESCrypt = {};

AESCrypt.decrypt = function(cryptkey, iv, encryptdata) {
encryptdata = new Buffer(encryptdata, 'base64').toString('binary');

var decipher = crypto.createDecipheriv('aes-256-cbc', cryptkey, iv),
decoded = decipher.update(encryptdata);

decoded += decipher.final();
return decoded;
}

AESCrypt.encrypt = function(cryptkey, iv, cleardata) {
var encipher = crypto.createCipheriv('aes-256-cbc', cryptkey, iv),
encryptdata = encipher.update(cleardata);

encryptdata += encipher.final();
encode_encryptdata = new Buffer(encryptdata, 'binary').toString('base64');
return encode_encryptdata;
}

var cryptkey = crypto.createHash('sha256').update('Nixnogen').digest(),
iv = 'a2xhcgAAAAAAAAAA',
buf = "Here is some …
Run Code Online (Sandbox Code Playgroud)

encryption openssl aes node.js

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

<head>部分中有多高可以安全地放置Google跟踪代码管理器代码?

Google跟踪代码管理器指示开发人员:

粘贴此代码[跟踪代码]作为<head>页面尽可能的:

<!-- Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-XXXXXXX');</script> <!-- End Google Tag Manager -->

我的问题是,该代码的正确位置有多高?正确的意思,能够在> 95%的浏览器上运行而没有问题/警告/错误,和/或根据HTML最佳实践.

它可以在开始<head>标记后面吗?只要它在<head>某个部分,它真的很重要吗?

作为参考/示例,下面是HTML样板.什么是样板中跟踪代码的最佳位置?

<!doctype html>
<html class="no-js" lang="">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="x-ua-compatible" content="ie=edge">
        <title></title>
        <meta name="description" content="">
        <meta name="viewport" content="width=device-width, initial-scale=1">

        <link rel="manifest" href="site.webmanifest">
        <link rel="apple-touch-icon" href="icon.png">
        <!-- Place favicon.ico in the root directory -->

        <link rel="stylesheet" href="css/normalize.css">
        <link rel="stylesheet" href="css/main.css">
    </head>
    <body>
        <!--[if lte IE 9]>
            <p class="browserupgrade">You are …
Run Code Online (Sandbox Code Playgroud)

html javascript html5boilerplate google-tag-manager

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

Socket.io客户端来自CDN

根据Socket.io文档:

socket.io-client的独立版本由socket.io服务器自动公开为/socket.io/socket.io.js.或者,您可以提供在此存储库的根目录下找到的文件socket.io-client.js.

<script src="/socket.io/socket.io.js"></script>
<script>
    var socket = io('http://localhost');
    socket.on('connect', function(){
    socket.on('event', function(data){});
    socket.on('disconnect', function(){});
  });
</script>
Run Code Online (Sandbox Code Playgroud)

但是,我想从一个单独的CDN服务socket.io客户端(它更便宜,更快,并减少我的服务器上的负载).

我怎样才能做到这一点?我是否必须禁用socket.io默认值?

socket.io

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

Nodejs最大套接字池设置

所以,我正在尝试优化我的节点应用程序,我的应用程序发出HTTP和HTTPS请求.

LinkedIn的这篇文章中获取节点的速度,它建议禁用套接字池来删除5个套接字的限制:

// Disable socket pooling
var http = require('http');
var options = {.....};
options.agent = false;
var req = http.request(options)
Run Code Online (Sandbox Code Playgroud)

现在来自GitHub的Mikeal(Request的开发者),他建议:

require('http').globalAgent.maxSockets = Infinity
Run Code Online (Sandbox Code Playgroud)

公平地说,他并不暗示无限,但你可以在那里提出任何合理的价值.

现在,我的应用程序使用http和https,所以我使用了这段代码:

var http = require('http');
http.globalAgent.maxSockets = 30;
var https = require('https');
https.globalAgent.maxSockets = 30;
Run Code Online (Sandbox Code Playgroud)

当我这样做时,我收到此错误:

TypeError:无法设置未定义的属性'maxSockets'

最后,在查看HTTP文档时,它不显示"globalAgent",而是仅显示agent.maxSockets.

所以,我首先想知道,覆盖此参数的最佳语法是什么?

第二,什么是最优值?它是基于我的服务器有多少内存?它的带宽?

sockets node.js

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

隐私浏览模式下的Web存储(sessionStorage和localStorage)(隐身)

背景

现代浏览器中的HTML5 Web存储功能可通过以下Javascript命令访问:

sessionStorage.setItem("username", "John");
localStorage.setItem("username", "John")
Run Code Online (Sandbox Code Playgroud)

我可以使用的网站表明浏览器支持率接近90%.但是,在"已知问题"选项卡中,我可以使用说:

在隐私浏览模式下,Safari,iOS Safari和Android浏览器不支持设置localStorage.

我的问题

在隐私浏览模式下,Safari,iOS Safari和Android浏览器是否仍支持sessionStorage?

javascript html5 session-storage local-storage web-storage

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

Express.js有多种方法

所以在Express你可以这样做:

app.get('/logo/:version/:name', function (req, res, next) {
    // Do something
}    
Run Code Online (Sandbox Code Playgroud)

app.all('/logo/:version/:name', function (req, res) {
    // Do something
}    
Run Code Online (Sandbox Code Playgroud)

有没有办法只有两种方法(即GET和HEAD)?如:

app.get.head('/logo/:version/:name', function (req, res, next) {
    // Do something
}    
Run Code Online (Sandbox Code Playgroud)

node.js express

7
推荐指数
2
解决办法
4906
查看次数

localstorage数据可以放在HTTP头中吗?

我想在客户端使用localStorage,现在我将这些数据发送到AJAX请求的主体中.但是,能够通过页面请求发送数据会很好.有没有办法在HTTP标头中放置localStorage数据(或者我猜任何数据),以便我可以用Javascript读取它并将其存储在localstorage中?

javascript html5 session-storage http-headers local-storage

6
推荐指数
1
解决办法
2723
查看次数

使用Javascript编写cookie时,它是同步存储还是异步存储?

在这里使用jQuery.cookie

// Do stuff
$.cookie('something', 'yes', {
    domain: 'example.com',
    httpOnly: false,
    path: '/',
    expires: 10,
    secure: true
});
// Do other stuff...including using the cookie value right away
Run Code Online (Sandbox Code Playgroud)

所有浏览器都做同样的事情吗?

javascript cookies jquery-cookie

5
推荐指数
1
解决办法
2280
查看次数

xml 命名空间存在安全问题

我的网站始终通过 HTTPS 提供服务,以保护用户数据等。

但是,我确实有一些带有 xml 命名空间链接的 SVG HTML 标签。这些链接是 HTTP 而不是 HTTPS:

xmlns="http://www.w3.org/2000/svg"
Run Code Online (Sandbox Code Playgroud)

这是一个问题吗?我应该将所有这些设置为 HTTPS 吗?

https xml-namespaces

5
推荐指数
1
解决办法
1140
查看次数