Security News
38% of CISOs Fear They’re Not Moving Fast Enough on AI
CISOs are racing to adopt AI for cybersecurity, but hurdles in budgets and governance may leave some falling behind in the fight against cyber threats.
Agent is a client-side request module inspired by SuperAgent.
var agent = require('agent')
var request = agent()
Agent can be used by composing methods:
request.method('GET').url('./file').data({x: y}).send(function(error, response) {
//...
})
These methods also act as getters when no parameter is supplied.
Agent can also be used by passing arguments:
var request = agent('GET', './file', {x: y}, function(error, response) {
//...
})
// defaults to POST
var request = agent('./file', {x: y}, function(error, response) {
//...
})
// defaults to POST, no data
var request = agent('./file', function(error, response) {
//...
})
You can also mix and match:
var request = agent('./file')
request.send(function(error, response) {
request.data({x: y}).send(function(error, response) {
})
})
Other methods:
request.header(name, value) // set request header
request.header(name) // get request header
request.header() // get all request header
request.running() // bool
request.abort() // duh
request.user(userName)
request.password("password") // don't use "password" as your password
Agent encodes data you send and decodes data it receives based on content-type.
By default, it encodes and decodes application/x-www-form-urlencoded
and application/json
(however an application/x-www-form-urlencoded
response is not common).
You can add a new response body decoder by doing:
agent.decoder('application/javascript', function(text) {
return new Function(text); // hemmm
});
request.send(function(error, response) {
// response.body is a function if the content-type
// of the response is `application/javascript`
})
Or an encoder for data you send:
// This is already in Agent, this is an example
agent.encoder('application/json', JSON.stringify);
request.header('content-type', 'application/json')
// the request will be sent with JSON rather than url encoded.
request.data({a: 1, b: 2}).send(function(...) {
})
The response obejct you get back when requesting contains a few useful properties:
response.text // response text
response.body // parsed response text based on the content-type header field
response.status // response status
response.header // response header, as an object
// and some added sugar, courtesy of SuperAgent
response.info
response.ok
response.clientError
response.serverError
response.error
response.accepted
response.noContent
response.badRequest
response.unauthorized
response.notAcceptable
response.notFound
Simply run
npm test
And fire up a browser on http://localhost:9090
FAQs
client-side request module
We found that agent demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers 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
CISOs are racing to adopt AI for cybersecurity, but hurdles in budgets and governance may leave some falling behind in the fight against cyber threats.
Research
Security News
Socket researchers uncovered a backdoored typosquat of BoltDB in the Go ecosystem, exploiting Go Module Proxy caching to persist undetected for years.
Security News
Company News
Socket is joining TC54 to help develop standards for software supply chain security, contributing to the evolution of SBOMs, CycloneDX, and Package URL specifications.