uncss/uncss

Add option to ignore TLS/SSL errors

Open

#359 ouverte le 31 janv. 2018

Voir sur GitHub
 (9 commentaires) (0 réactions) (0 assignés)JavaScript (403 forks)batch import
enhancementhelp wanted

Métriques du dépôt

Stars
 (9 386 stars)
Métriques de merge PR
 (Aucune PR mergée en 30 j)

Description

Hi, I'm using the latest uncss and ran uncss https://sample.dev > /path/to/stylesheet.css to remove unused styles from my local server with HTTPS and self signed certificates. but I got an TLS-related error.

Node version: v9.4.0

UnhandledPromiseRejectionWarning: Error: self signed certificate
    at TLSSocket.onConnectSecure (_tls_wrap.js:1041:34)
    at TLSSocket.emit (events.js:160:13)
    at TLSSocket._finishInit (_tls_wrap.js:638:8)
(node:34329) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:34329) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

I think an option for self-signed certificate should be provided or ignoring TLS related errors should be applied with something like these options in src/utility.js at Line 112-113 when a request is issued.

request({
  url: filename,
  headers: { 'User-Agent': 'UnCSS' },
  // ignore TLS related errors
  rejectUnauthorized: false,
  strictSSL: false,
  // OR just specify self-signed cert and key
  agentOptions: {
    cert: fs.readFileSync("/path/to/cert.crt")
    key: fs.readFileSync("/path/to/key.key")
  }
}, callback);

@giakki, @RyanZim What do you guys think about this?

Guide contributeur