Skip to content
/ proxy Public

Perpustakaan untuk mengelola server HTTP/HTTPS dan pengaturan proxy di Windows, termasuk pembuatan sertifikat SSL

License

Notifications You must be signed in to change notification settings

ndiing/proxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Functions

setProxyServer([address], [port], enable)

Mengatur server proxy untuk Windows.

getProxyServer()string | null

Mengambil alamat server proxy yang sedang digunakan.

generateRootCA2()Object

Menghasilkan CA root untuk sertifikat SSL.

handleSNICallback(servername, cb)

Menangani callback SNI (Server Name Indication) untuk TLS.

handleConnect(req, socket, head)

Menangani koneksi HTTP CONNECT untuk tunneling (misalnya, HTTPS).

handleResponse(req, res, res2)

Menangani respons dari permintaan dan meneruskan ke respons klien.

handleRequest(req, res, head)

Menangani permintaan HTTP dan meneruskannya ke server upstream.

handleUpgrade(req, socket, head, req2, socket2, head2)

Menangani upgrade koneksi HTTP (seperti WebSocket).

start([port], [hostname], [backlog])

Memulai server HTTP dan HTTPS.

stop()

Menghentikan server HTTP dan HTTPS.

setProxyServer([address], [port], enable)

Mengatur server proxy untuk Windows.

Kind: global function
Throws:

  • Error - Jika terjadi kesalahan saat mengubah pengaturan proxy.
Param Type Default Description
[address] string ""127.0.0.1"" Alamat IP dari server proxy.
[port] number 8000 Port dari server proxy.
enable boolean Jika true, proxy diaktifkan; jika false, proxy dinonaktifkan.

getProxyServer() ⇒ string | null

Mengambil alamat server proxy yang sedang digunakan.

Kind: global function
Returns: string | null - - Alamat server proxy dalam format "http://address:port" atau null jika tidak ada.
Throws:

  • Error - Jika terjadi kesalahan saat mengambil pengaturan proxy.

generateRootCA2() ⇒ Object

Menghasilkan CA root untuk sertifikat SSL.

Kind: global function
Returns: Object - - Objek yang berisi kunci privat dan sertifikat root.
Throws:

  • Error - Jika terjadi kesalahan saat menghasilkan atau membaca kunci dan sertifikat.

handleSNICallback(servername, cb)

Menangani callback SNI (Server Name Indication) untuk TLS.

Kind: global function
Throws:

  • Error - Jika terjadi kesalahan saat menghasilkan sertifikat.
Param Type Description
servername string Nama host server yang terhubung.
cb function Callback yang dipanggil dengan konteks TLS.
cb.err Error | null Kesalahan jika ada, null jika tidak ada.
cb.ctx SecureContext Konteks TLS yang terkait dengan servername.

Example

const server = tls.createServer(
    {
        SNICallback: handleSNICallback,
    },
    (socket) => {
        // Handle socket
    },
);
server.listen(443);

handleConnect(req, socket, head)

Menangani koneksi HTTP CONNECT untuk tunneling (misalnya, HTTPS).

Kind: global function
Throws:

  • Error - Jika terjadi kesalahan saat mengatur koneksi.
Param Type Description
req http.IncomingMessage Objek permintaan HTTP.
socket net.Socket Socket yang terhubung dari klien.
head Buffer Bagian pertama dari data yang diterima.

Example

const server = http.createServer(handleConnect);
server.listen(3000);

handleResponse(req, res, res2)

Menangani respons dari permintaan dan meneruskan ke respons klien.

Kind: global function
Throws:

  • Error - Jika terjadi kesalahan saat mengalirkan data dari respons.
Param Type Description
req http.IncomingMessage Objek permintaan HTTP dari klien.
res http.ServerResponse Objek respons HTTP yang akan dikirim ke klien.
res2 http.IncomingMessage Objek respons yang diterima dari server upstream.

Example

const server = http.createServer((req, res) => {
    const res2 = fetchUpstreamResponse(req); // Asumsi ada fungsi fetchUpstreamResponse()
    handleResponse(req, res, res2);
});
server.listen(3000);

handleRequest(req, res, head)

Menangani permintaan HTTP dan meneruskannya ke server upstream.

Kind: global function
Throws:

  • Error - Jika terjadi kesalahan saat mengalirkan data atau dalam permintaan upstream.
Param Type Description
req http.IncomingMessage Objek permintaan HTTP yang diterima dari klien.
res http.ServerResponse Objek respons HTTP yang akan dikirim ke klien.
head Buffer Bagian pertama dari data yang diterima (digunakan untuk upgrade).

Example

const server = http.createServer(handleRequest);
server.listen(3000);

handleUpgrade(req, socket, head, req2, socket2, head2)

Menangani upgrade koneksi HTTP (seperti WebSocket).

Kind: global function
Throws:

  • Error - Jika terjadi kesalahan saat mengalirkan data atau menulis ke socket.
Param Type Description
req http.IncomingMessage Objek permintaan HTTP dari klien.
socket net.Socket Socket yang terhubung dari klien.
head Buffer Bagian pertama dari data yang diterima (digunakan untuk upgrade).
req2 http.IncomingMessage Objek permintaan HTTP dari server upstream.
socket2 net.Socket Socket yang terhubung dari server upstream.
head2 Buffer Bagian pertama dari data yang diterima dari server upstream.

start([port], [hostname], [backlog])

Memulai server HTTP dan HTTPS.

Kind: global function
Throws:

  • Error - Jika terjadi kesalahan saat memulai server.
Param Type Default Description
[port] number 8000 Port untuk server HTTP. Default adalah 8000.
[hostname] string "'0.0.0.0'" Nama host untuk server. Default adalah '0.0.0.0'.
[backlog] function () => console.log(httpServer.address()) Fungsi callback yang dipanggil setelah server mulai mendengarkan.

Example

start(3000, "localhost", () => {
    console.log("Server is running on http://localhost:3000");
});

stop()

Menghentikan server HTTP dan HTTPS.

Kind: global function
Throws:

  • Error - Jika terjadi kesalahan saat menghentikan server.

Example

stop();

About

Perpustakaan untuk mengelola server HTTP/HTTPS dan pengaturan proxy di Windows, termasuk pembuatan sertifikat SSL

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published