Research
Security News
Malicious npm Package Targets Solana Developers and Hijacks Funds
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
help-me-respond
Advanced tools
Hello there :) 👋🏼
Thank you for your interest in help-me-respond!
In case you run into problems please feel free to create an issue for me at the Issues Tab
Your feedback is highly appreciated! 🌸
Pass arguments to your messages
This is a simple response helper which should make your life a bit easier.
It supports localization and friendly messages for users.
Help-me-respond
preconfigures HTTP responses for you by setting the status code, processing the message and setting headers. You only need to call one of the API functions and pass the message in a form of a string or an object to it.
Your project is a nodejs
server based on Express
or something similar. Help-me-respond uses the res
object from Express, which represents an HTTP response.
npm i help-me-respond --save
Create a config/ folder in the root of your project. That is where all the config for the library lives.
Create config/default.json for the general library config
{
"logging": false,
"prefixNone": false, # when you server returns any data, a prefix "data" is added to the response
"disableJsonHeader": false # remove the default 'application/json' header
"friendlyMessages": [] # array of message keys which are defined in message.json or locales.json
}
{
"welcome": "Welcome to the platform!",
"notFound": "Unfortunately the given record was not found. Please check your input details."
}
Some messages returned from the server are too technical for users. We want to differentiate between those messages and user friendly messages. See example below.
To enable Friendly messages you just need to edit the config/default.json and specify which messages are the friendly ones. The messages itself have to be defined in the config/messages.json (or config/locales.json if you are using localization).
config/default.json
{
"friendlyMessages": ["welcome", "notFound"]
}
Once the message name is in the above array, the response object will have a key friendlyMessage which makes it easy for front-end to differentiate between messages.
Sometimes you need to support more than one language.
config/default.json
{
"lang": "en",
"langFile": "../../config/locales.json"
}
lang
is the default language of your application
langFile
path is used in the library therefore, the path is relative to the index.js file from help-me-respond folder
config/locales.json
file and add some messages there.config/locales.json
{
"SHARING_ERROR": {
"en": "You cannot share the link with yourself."
},
"NOT_OWNER": {
"en": "You are not the owner."
}
}
This works only if you are using localization.
config/locales.json
{
"welcome": "Welcome dear {{name}}"
}
http200(res, JSON.stringify({
msg: 'welcome',
args: {
name: 'Mike'
}
}))
res - Express res object
msg - string message, Error object, any other object
headers - array with http headers. If none provided the only header set by the library will be Content-type: application/json
returns HTTP response with 400 error code If no message is specified will return message - BAD REQUEST
returns HTTP response with 404 error code If no message is specified will return message - NOT FOUND
returns HTTP response with 403 error code If no message is specified will return message - FORBIDDEN
returns HTTP response with 403 error code If no message is specified will return message - UNAUTHENTICATED
returns HTTP response with 201 success code
returns HTTP response with 201 success code
returns HTTP response with 204 code
general function to return any HTTP code you want
{
"friendlyMessage": "I am a friendly successfull message"
}
{
"message": "I am a very technical success message that users do not want to see"
}
{
"error": {
"friendlyMessage": "I am a friendly error message"
}
}
{
"error": {
"message": "I am a very technical error message that users do not want to see",
"stack": [
'at /Users/XX/Projects/help-me-respond/test/responseErrorTest.js:28:9',
'at DUMMY_ERROR_OBJECT (/Users/Dasha/Projects/help-me-respond/test/responseErrorTest.js:27:9)',
'at Context.<anonymous> (/Users/Dasha/Projects/help-me-respond/test/responseErrorTest.js:72:3)',
'at callFn (/usr/local/Cellar/node/0.12.7/libexec/npm/lib/node_modules/mocha/lib/runnable.js:334:21)'
]
}
}
{
"data": {
"item1": "name",
"item2": "name"
}
}
FAQs
Simple nodejs Express http response helper
The npm package help-me-respond receives a total of 0 weekly downloads. As such, help-me-respond popularity was classified as not popular.
We found that help-me-respond 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.
Research
Security News
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Security News
Research
Socket researchers have discovered malicious npm packages targeting crypto developers, stealing credentials and wallet data using spyware delivered through typosquats of popular cryptographic libraries.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.