Skip to content

Instantly share code, notes, and snippets.

@unixfox
Last active February 11, 2021 17:42
Show Gist options
  • Save unixfox/5db061d27f0605187bf2695a2610a6a4 to your computer and use it in GitHub Desktop.
Save unixfox/5db061d27f0605187bf2695a2610a6a4 to your computer and use it in GitHub Desktop.
log sent discord.js requests
  1. Install any MITM proxy that would like to use and make it listening on port 8080. https://mitmproxy.org/ is a good candicate.
  2. Place every other file except bot.js of this GitHub gist into a same directory. bot.js is not required, it's just a demo for showing you how to include the proxy into your code.
  3. Install proxy-agent and http-proxy: npm install http-proxy proxy-agent.
  4. Run the proxy: node proxy.js.
  5. Modify your discord.js code according to the demo code in bot.js.
  6. That's it!
const Discord = require('discord.js');
process.env["NODE_TLS_REJECT_UNAUTHORIZED"] = 0;
const client = new Discord.Client({
http: {
api: "https://localhost:8000/api"
}
});
client.on('ready', () => {
console.log(`Logged in as ${client.user.tag}!`);
});
client.on('message', msg => {
if (msg.content === 'ping') {
msg.reply('Pong!');
}
});
client.login('token');
-----BEGIN CERTIFICATE-----
MIIDazCCAlOgAwIBAgIUWRTAxTPLd/D6AcDx13mcISMpK2wwDQYJKoZIhvcNAQEL
BQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM
GEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0yMTAyMTExNzQxMjVaFw0yMjAy
MTExNzQxMjVaMEUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw
HwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB
AQUAA4IBDwAwggEKAoIBAQDgOGrJGYvD20n2mxGjjjUhfHRGGdjTCOy4jjzOCJHy
G6A4mx5tf6yQ+C7dTXHx9G9ZfSsXEYbFLfxfaX/lNhDVVaM1/y27u72iF7ACihWb
9wrg5uQKtW7UJLNjhmmii9XFjefnTA+s2UYwl9UtVkuR6ldrUrKTTrF9a3OarhaQ
7N8ZwGjeUPVnlOLSqx+LtZq5YVHtS4CqHd7wn/DnSljRSOPo7loPX67+XmMCGS9I
0B/nuDJoGPv/Xjgfbgy/qQX60y4ZK/DkH9lLUQl6Xvp7FRmdoeOrayKe2QrEw7+S
8O30A72KR/H8sEXtqrrcKdia+Kz3ZB2yLOL9SGOR8gjDAgMBAAGjUzBRMB0GA1Ud
DgQWBBSlkkd9Lh+HVME96Qf+CkPUuj1DSjAfBgNVHSMEGDAWgBSlkkd9Lh+HVME9
6Qf+CkPUuj1DSjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQAI
H0smi/oqCg9uh8f0d0Tm8FBCuaEfUqTzfZ8jxtr2tXk9ZEai3q7TUk79CcsOdyvh
9pCLLE/9SFOc7aG9yiPHyeInuewv0DbfkOuzCZ4UAFWidqkwNMyFFjf02az9httk
LNB0njTR2mhdg4Gvo5cyWN0Et6metk+h2w2oL7xQTW9rhu/EX+ZejsKn7Ft7q8iP
vDRSqPU+GlQuc1P2CybN3plaDQ9tn0hEDpbk2tHq8r6x07C1LkfpY5D6TlZl9Tni
9SyP3XuCVrLWzKMWf6aN0qwPghXE8oS3za1SJBRqfO+s1ZpJ0GujaSseYAN+TeLC
RMPAoUqPwIG6o5Yipl2v
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDgOGrJGYvD20n2
mxGjjjUhfHRGGdjTCOy4jjzOCJHyG6A4mx5tf6yQ+C7dTXHx9G9ZfSsXEYbFLfxf
aX/lNhDVVaM1/y27u72iF7ACihWb9wrg5uQKtW7UJLNjhmmii9XFjefnTA+s2UYw
l9UtVkuR6ldrUrKTTrF9a3OarhaQ7N8ZwGjeUPVnlOLSqx+LtZq5YVHtS4CqHd7w
n/DnSljRSOPo7loPX67+XmMCGS9I0B/nuDJoGPv/Xjgfbgy/qQX60y4ZK/DkH9lL
UQl6Xvp7FRmdoeOrayKe2QrEw7+S8O30A72KR/H8sEXtqrrcKdia+Kz3ZB2yLOL9
SGOR8gjDAgMBAAECggEAAXidSsB+KETSEWonDXmrY5LbeHJG9+uBEhzszTVFL996
h6SM6I8D5NecBxuw+bNu35lwpPAagESy+TVJ/4kBR0UOkxYfiLHMprmdEAcz6RgP
3DXnnSJfnci33JlPLB/awTcTJHNdTvcF/N+iKG/+gvCUrkGWplzH0VjZI1StFTpV
f0mED1yGrr1LuR9v77Wd1lIMREUGvXBcoS/nZD38LaqkWR1BfoRixM35nhx0Qseh
QB64u/TAlDVltMKXSyIQSac6IZdPJrv0/MTgH1A3nOc5MFMJyAczugHbDBdtbFQC
+N1f5O1oRxD0pKC//sbnJe5DR9xlGuS5qpnYXlLccQKBgQD10zqX/bWqQfqpdrYd
0RC9fWf01L6LK+W3wksMeCka59djhGlfEp5M+wsZ8OyjjNDqLvKJUL21ZjEhxMzR
iunFq635PD0t74DmcWdHTyWIwsN2Eh6AOu+OtCouO3ipZBd2/5S/jRYJgm5oYaZq
kyPrk+d9/Sq0hnCXjwn96FiqvQKBgQDpgEOGiCVjZem5tJGMW6eD+Cw2zfUjpzzg
AfVKv0cYBFdMJaX1K0OYE41g1Gfb95jKtTd1fN8f7IoDNYqTe2GH62plMc4rtgt3
xvGQDBBot9It72WO3EAwXm3vnnF6WNxDO6tED3ih8ciWWl5vhmebkFkYR9AN6ShQ
mDV8L2p5fwKBgQCsd9I4KMx382qF0r/bE38HMyDoaQp2Ygn9btdwnC1aryYysAet
qEZgBBG51YpxBK7eXqnTJU60Ikp+QrDgovF4ugaJQnY58DsjcpTfNuxCk0LHZ9b2
aGMCX+zoGtmBHrRHzPDzo2y+p0AHA9vaEfm1okNb5W880MXVz4lXFth+kQKBgQDA
NtrfWyHUAif1vEP4U9bBF0FmWALNN7Uv/cyrnGvsxF4MjA1ilhvNi4LdS9y3Qcng
TG774zBVukUeQSvzHiT6W3u5E9fROcmU7wsZdiTn3zJAqAplIMAiUQmUsExf19hx
7COfIlE+lqd1xaxpiC2v7JK7HxqQ6PdL6RBWSz4OBwKBgFthpg0cEeKA2A+6rsvO
2alJDdeHikD/4eClO1z9oZq5L69N5dervgptRgMyWLrvqnZv7ZST/EqsYlJ/26A6
3a/k/oE0Dt8m16AiSEsBXdOxitO6h8uqUUWNtjwNCNYlfLzJlGdYFHr2sc3V6gOx
QKXOfm0jegh+rwEsALsmDqT4
-----END PRIVATE KEY-----
var http = require('http'),
httpProxy = require('http-proxy'),
ProxyAgent = require('proxy-agent'),
fs = require("fs");
httpProxy.createProxyServer({
agent: new ProxyAgent('http://127.0.0.1:8080'),
target:'https://discord.com',
secure: false,
changeOrigin: true,
ssl: {
key: fs.readFileSync('key.pem', 'utf8'),
cert: fs.readFileSync('cert.pem', 'utf8')
}
}).listen(8000);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment