Security News
GitHub Removes Malicious Pull Requests Targeting Open Source Repositories
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
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
The npm package agent receives a total of 120 weekly downloads. As such, agent popularity was classified as not popular.
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
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.