@0y0/node-request 中文文档教程
@0y0/node-request ·
@0y0/node-request
是一个微型 fetch 包装器,试图使 HTTP 请求代码更具可读性和可读性更容易写。
Before
fetch('/users/1', {
method: 'PUT',
headers: {
'Content-Type': 'application/json'
'Authorization': 'Bearer this-is-user-token'
},
body: JSON.stringify({
email: 'foo@gmail.com',
name: 'bar'
})
}).then(handleResponse, handleError)
After
Request
.post('/users/1')
.bearer('this-is-user-token')
.jsonBody({ email: 'foo@gmail.com', name: 'bar' })
.then(handleResponse, handleError)
Installation
npm install @0y0/node-request --save
import Request from '@0y0/node-request'
Usage
Send a request
Reqeust.get('/api')
Reqeust.post('/api')
Reqeust.put('/api')
Reqeust.delete('/api')
Set HTTP header
// headers: { foo: 'bar' }
Request.get('/api').header('foo', 'bar')
// headers: { Authorization: 'bar' }
Request.get('/api').auth('bar')
// headers: { Authorization: 'Bearer token' }
Request.get('/api').bearer('token')
// headers: { foo1: 'bar1', Authorization: 'token' }
Request.get('/api')
.header('foo1', 'bar1')
.header('foo2', undefined)
.auth('token')
Set URL parameters
// url: /api/?foo=bar
Request.get('/api').param('foo', 'bar')
// url: /api/?foo2=bar2
Request.get('/api').param('foo1', undefined).param('foo2', 'bar2')
// url: /api/?foo1=bar1&foo2=bar2
Request.get('/api').params({ foo1: 'bar1', foo2: 'bar2' })
Set request body
Request.post('/api').body('content')
// Content-Type: application/json
Request.post('/api').jsonBody({ foo: 'bar' })
// Content-Type: multipart/form-data
Request.post('/api').formBody({ foo: 'bar' })
// Content-Type: application/x-www-form-urlencoded;charset=UTF-8
Request.post('/api').urlencodedFormBody({ foo: 'bar' })
Handle JSON response
Request.get('/api').acceptJson()
License
@0y0/node-request ·
@0y0/node-request
is a tiny fetch wrapper tried to make HTTP request code more readable and more easy to write.
Before
fetch('/users/1', {
method: 'PUT',
headers: {
'Content-Type': 'application/json'
'Authorization': 'Bearer this-is-user-token'
},
body: JSON.stringify({
email: 'foo@gmail.com',
name: 'bar'
})
}).then(handleResponse, handleError)
After
Request
.post('/users/1')
.bearer('this-is-user-token')
.jsonBody({ email: 'foo@gmail.com', name: 'bar' })
.then(handleResponse, handleError)
Installation
npm install @0y0/node-request --save
import Request from '@0y0/node-request'
Usage
Send a request
Reqeust.get('/api')
Reqeust.post('/api')
Reqeust.put('/api')
Reqeust.delete('/api')
Set HTTP header
// headers: { foo: 'bar' }
Request.get('/api').header('foo', 'bar')
// headers: { Authorization: 'bar' }
Request.get('/api').auth('bar')
// headers: { Authorization: 'Bearer token' }
Request.get('/api').bearer('token')
// headers: { foo1: 'bar1', Authorization: 'token' }
Request.get('/api')
.header('foo1', 'bar1')
.header('foo2', undefined)
.auth('token')
Set URL parameters
// url: /api/?foo=bar
Request.get('/api').param('foo', 'bar')
// url: /api/?foo2=bar2
Request.get('/api').param('foo1', undefined).param('foo2', 'bar2')
// url: /api/?foo1=bar1&foo2=bar2
Request.get('/api').params({ foo1: 'bar1', foo2: 'bar2' })
Set request body
Request.post('/api').body('content')
// Content-Type: application/json
Request.post('/api').jsonBody({ foo: 'bar' })
// Content-Type: multipart/form-data
Request.post('/api').formBody({ foo: 'bar' })
// Content-Type: application/x-www-form-urlencoded;charset=UTF-8
Request.post('/api').urlencodedFormBody({ foo: 'bar' })
Handle JSON response
Request.get('/api').acceptJson()