As we were preparing Playwright 1.1.0, I learned quite a lot about Web Proxies. Below is the summary of my findings.
There are two groups of proxies that drive internet:
As we were preparing Playwright 1.1.0, I learned quite a lot about Web Proxies. Below is the summary of my findings.
There are two groups of proxies that drive internet:
#!/usr/bin/env bash | |
xsv select message "$1" | xsv fmt --quote ' ' | sed -e '1d' | jq -c -r 'fromjson' |
Estimated metric | Weight | Fast >90 | Slow <50 | |
---|---|---|---|---|
First Contentful Paint (FCP) | 3x | <2.4s | >4.0s | |
First Meaningful Paint (FMP) | 1x | <2.4s | >4.0s | |
Speed Index (SI) | 4x | <3.4s | >5.8s | |
First CPU Idle (FCI) | 2x | <3.6s | >6.5s | |
Time to Interactive (TTI) | 5x | <3.8s | >7.3s |
/*! | |
* Copyright 2015 Google Inc. All rights reserved. | |
* | |
* Licensed under the Apache License, Version 2.0 (the "License"); | |
* you may not use this file except in compliance with the License. | |
* You may obtain a copy of the License at | |
* | |
* http://www.apache.org/licenses/LICENSE-2.0 | |
* | |
* Unless required by applicable law or agreed to in writing, software |
I am weirdly good at this, so let me share some of my tricks. #AcademicTwitter #phdlife #gradstudent
Ex: "The teacher needs to know..." --> "Teachers need to know...."
(function (history, trackingId, options) { | |
const getParameterByName = (paramName) => { | |
var searchString = window.location.search.substring(1), | |
i, val, params = searchString.split("&"); | |
for (i=0;i<params.length;i++) { | |
val = params[i].split("="); | |
if (val[0] == paramName) { | |
return val[1] || undefined; | |
} | |
} |
<!doctype html> | |
<html lang="en"> | |
<head> | |
<meta charset="utf-8"> | |
<title>Hello</title> | |
</head> | |
<body> | |
<script> |
const net = require('net'); | |
const {parse} = require('url'); | |
const [,,url] = process.argv; | |
const client = new net.Socket(); | |
const {hostname, port = 80, path} = parse(url); | |
client.on('error', (e) => {throw e}); | |
const request = (cb) => { |
Simple workflow for the #OWASP Amass tool suite: https://github.com/OWASP/Amass
Google for the organization's ASN
$ amass.netdomains -asn ASN -p 80,443 > domains.txt
$ amass -v -ip -do data.json -df domains.txt
$ amass.viz -i data.json -d3 graph.html