
Security News
Feross on TBPN: How North Korea Hijacked Axios
Socket CEO Feross Aboukhadijeh breaks down how North Korea hijacked Axios and what it means for the future of software supply chain security.
packetgun-frontend
Advanced tools
Packetgun-frontend is the frontend node.js module that is used with the Packetgun-backend module to exenge data easily between the two.
If you have node.js and npm installed you can run the following command in the terminal.
npm install packetgun-frontend
This package is designed to be used with packetgun-backend as server.
First import the package with a script tag in the html of your website:
<script src="node_modules/packetgun-frontend/packetgun-frontend.js"></script>
This package doesn't require initialization.
To send a request with classic method you need to do as below:
//First you'll need to wrap the code in an async function in order to be able to use await
var app = async function(){
//Send the request
var response = await packetgun.classic("adress:port", {
//exit_code will be client_exit_code on the backend side
exit_code: 0,
data: "Hello world!"
})
//Log request exit code
console.log(response.exit_code)
//Log server exit code
console.log(response.server_exit_code)
//Log server data
console.log(response.data)
}
app()
This method is not recommended because the size of the client upload data (including exit_code) is limitted to 255 chars/bytes, Also this method is unidirectional as it uses http: client to server not the other way around.
To create a client with recommended method you need to do as below:
//Create a client
var error = packetgun.recommended("adress:port", function(client){
//When this callback is ran the client is connected to the server
//Set an event for receiving data
client.on("data", function(data){
//Log request exit code
console.log(client.exit_code)
//Log server exit code
console.log(client.server_exit_code)
//Log server data
console.log(client.data)
})
//Set an event for when the server disconnects
client.on("serverDisconnect", function(){
console.log("Server disconnected")
})
//Send data to the server (whenever you want and as many times as you want if the server is connected)
client.send({
//exit_code will be client_exit_code on the backend side
exit_code: 0,
data: "Hello world!"
})
//Close the connection (For the demo 5 seconds after the client connects)
setTimeout(function(){
client.close()
}, 5000)
})
//Create a loop to check if the error variable is not null if it is not null then there was an error, the error message will be in the error variable
var loop = setInterval(function(){
//If error variable is not null
if (!(error === null)){
//Log error
console.error(error)
//Stop loop
clearInterval(loop)
}
}/*Loop every milisecond*/, 1)
This method is recommended because it is bidirectional (client to server and server to client) as it uses websockets. Also the size of the client upload data (including exit_code) is unlimited.
The creator of this package is willmil11 (me).
There are no credits for this package. (yet)
FAQs
Packetgun-frontend is the frontend node.js module that is used with the Packetgun-backend module to exenge data easily between the two.
We found that packetgun-frontend demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Socket CEO Feross Aboukhadijeh breaks down how North Korea hijacked Axios and what it means for the future of software supply chain security.

Security News
OpenSSF has issued a high-severity advisory warning open source developers of an active Slack-based campaign using impersonation to deliver malware.

Research
/Security News
Malicious packages published to npm, PyPI, Go Modules, crates.io, and Packagist impersonate developer tooling to fetch staged malware, steal credentials and wallets, and enable remote access.