Tag: https

http进入nodejs

var http = require('http'); exports.get = function(){ var options = { host: 'http://stackoverflow.com/' }; http.get(options, function(res) { console.log("Got response: " + res.statusCode); }).on('error', function(e) { console.log("Got error: " + e.message); }); }; 给我错误Got error: getaddrinfo ENOTFOUND http://stackoverflow.com/ http://stackoverflow.com/:80我使用的文档; https://nodejs.org/docs/v0.5.2/api/http.html#request.url 可能是什么问题,我把端口号添加到选项中; var options = { host: 'http://stackoverflow.com/' port:443 //also port:8080, port:80, port: 8118 }; 但仍然没有解决办法。 是关于公司代理吗? […]

HTTPS与NodeJS swagger-express-mw npm包

我使用swagger-express-mw NPM包来创buildREST服务,当我用“swagger project start”运行项目,然后通过HTTP发布API时,我该如何使用HTTPS来代替。 我已经使用香草npm包使用HTTPS如下: var fs = require('fs'); var https = require('https'); var app = require('express')(); var options = { key : fs.readFileSync('my.private.key'), cert : fs.readFileSync('my.certificate.cer') }; app.get('/', function (req, res) { res.send('Yuhooo! Response over HTTPS!!! '); }); https.createServer(options, app).listen(8443, function () { console.log('Server started @ 8443!'); }); 但我不知道如何实现与swagger-express-mw相同,下面是我的app.js启动侦听器的代码片段。 在这里没有得到任何select使用HTTPS作为协议 SwaggerExpress.create(configuration, function(err, swaggerExpress) { […]

带有自签名证书的Https服务器

在创build自签名证书后,在chrome中变为不安全的本地主机:chrome:// flags /#allow-insecure-localhost 并添加了自签名证书系统和“全部信任”。 下面的代码仍然不通过https托pipe服务器。 在Chrome中显示以下错误: This site can't provide a secure connection localhost sent an invalid response. Try running Network Diagnostics. ERR_SSL_PROTOCOL_ERROR 我错过了什么工作? var express = require('express'); var https = require('https'); var http = require('http'); var fs = require('fs'); // This line is from the Node.js HTTPS documentation. var options = { key: fs.readFileSync('key.pem'), […]

将https代理configuration为只允许TLS1.2进行传出请求

我正在使用客户端证书从节点应用程序进行HTTPS连接: var options = { hostname: 'https://my-server.com', port: 443, path: '/', method: 'GET', key: fs.readFileSync('client1-key.pem'), cert: fs.readFileSync('client1-crt.pem'), ca: fs.readFileSync('ca-crt.pem') }; var req = https.request(options, res => { […] }); 一切工作正常,但是我想添加代码,以确保只允许TLS 1.2连接。 我找不到任何方法来configurationhttps.agent选项或其他地方。 有没有可能configuration这个,或者我必须build立一个连接,然后查询协议版本,如下所示: res.socket.getProtocol() === 'TLSv1.2' 如果协议不满意就中止连接?

NodeJS https是否执行stream量的对称encryption?

我正在创build一个基于来自SO的答案的安全连接的Node.js服务器。 代码从答案, var https = require('https'); 据我所知,有两个部分来保证连接。 进行证书validation和对称密钥交换的SSL握手。 使用对称密钥encryptionstream量。 https是否仅执行SSL握手? 它是否负责解密请求并encryption响应? 它使用对称密钥algorithm吗? 它使用AES吗? 如果不使用对称密钥encryption,我该怎么做? stream量是否encryption? PS:我已经在我引用的答案下留下了评论。 希望从SO的答案中得出问题是可以的。

如何避免HTTPSconfiguration的Express服务器上的“网站不安全”

我正在创build一个Express应用程序,我想使用HTTPS。 我在StartSSL.com上创build了一个证书,将它导入到我的服务器中,现在可以正确地build立连接到服务器。 但是有一些错误: 为什么会发生? 我必须以某种方式添加中间证书吗? 这个证书应该已经签了,我可能是错的。 这是我在index.js中的configuration部分: var bodyParser = require('body-parser'); app.use(bodyParser.json()); // support json encoded bodies app.use(force_https); app.use(bodyParser.urlencoded({ extended: true })); // support encoded bodies app.use(helmet()); app.disable('x-powered-by'); app.use(function(req, res, next) { res.header("Access-Control-Allow-Origin", "*"); res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept"); next(); }); // Setup HTTPS const httpsPort = 3443; const options = { key: fs.readFileSync("./key.pem", "utf8"), […]

NodeJS https客户端错误 – 400

我正在创build一个连接到Proxmox 2.1的REST API的NodeJS服务。 我的脚本: // module dependencies var http = require('http'), url = require('url'), https = require('https'), querystring = require('querystring'), fs = require('fs'); exports.urlReq = function(reqUrl, options, cb){ if(typeof options === "function"){ cb = options; options = {}; }// incase no options passed in // parse url to chunks reqUrl = url.parse(reqUrl); // http.request settings […]

在nodejs中传递下一个页面令牌之后,无法访问google位置api

嗨,我试图访问使用nodejs客户端的belo url https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=12.8441975,80.223766&radius=500&types=restaurant&key=Afghghghghghg&pagetoken=dghdghghgdhghgh 我正在使用一个正常的https客户端代码来访问。 当我没有传递页面令牌时,它的url是正常工作。但是,当我通过,我得到的错误如下 无效的请求 不知道我去哪里错了。任何帮助将不胜感激。

节点js Faye客户端无法正常使用HTTPS

我试图将js与我的应用程序集成在一起,我刚刚testing了http服务器,它运行良好,但是当我使用https服务器和我的index.php一起订阅消息时,这是行不通的。 启动服务器 var https = require('https'), faye = require('faye'); var fs = require('fs'); var options = { key: fs.readFileSync('/etc/apache2/ssl/apache.key'), cert: fs.readFileSync('/etc/apache2/ssl/apache.crt') }; var server = https.createServer(options), bayeux = new faye.NodeAdapter({mount: '/'}); bayeux.attach(server); server.listen(1337); 创build一个客户端 <script src="faye-browser-min.js"></script> <script> var client = new Faye.Client('https://localhost:1337/'); client.subscribe('/messages/*', function(message) { alert('Got a message:'); }); </script> 发送信息 我使用Faye客户端在test.php中推送消息。 $adapter = new […]

在NodeJS服务器端保护Firebase存储的外部链接

我在生成外部链接到存储在我的Firebase存储分区中的文件时遇到问题。 我现在正在使用Google云端存储,并使用此库(基于此答案)为常规存储桶生成外部链接,但在Firebase分配的存储桶上使用该库似乎不起作用。 我无法生成任何安全的HTTPS链接,并继续获取证书validation错误NET::ERR_CERT_COMMON_NAME_INVALID指出我的连接不是私有的。 如果我从HTTPS中删除“S”,则链接起作用。 注意:使用相同的凭据和私钥为我的项目中的其他存储桶生成链接,工作得很好。 只有Firebase存储分区拒绝接受我的签名…