В Bun опция unix в fetch() позволяет отправлять HTTP-запросы через unix domain socket.
ts
const unix = "/var/run/docker.sock";
const response = await fetch("http://localhost/info", { unix });
const body = await response.json();
console.log(body); // { ... }Опция unix — это строка, указывающая локальный путь к unix domain socket. Функция fetch() будет использовать сокет для отправки запроса на сервер вместо использования TCP-соединения. https также поддерживается при использовании протокола https:// в URL вместо http://.
Для отправки POST-запроса к API через unix domain socket:
ts
const response = await fetch("https://hostname/a/path", {
unix: "/var/run/path/to/unix.sock",
method: "POST",
body: JSON.stringify({ message: "Hello from Bun!" }),
headers: {
"Content-Type": "application/json",
},
});
const body = await response.json();