什么是 rest.js
rest.js 是一个基于 Promise 的 HTTP 客户端,用于浏览器和 Node.js 环境中进行 RESTful API 请求。它提供了简洁的 API 接口,支持请求拦截器和响应拦截器,并且可以与许多不同的转换器(如 JSON、XML 和 FormData)一起使用。
安装 rest.js
通过 npm 可以很方便地安装 rest.js:
npm install rest
使用 rest.js
发送 GET 请求
首先,我们需要导入 rest.js:
const { RestClient } = require('rest'); const client = new RestClient();
然后,我们可以使用 client.get(url, config)
方法发送 GET 请求:
client.get('https://jsonplaceholder.typicode.com/posts/1') .then(response => console.log(response.data)) .catch(error => console.error(error));
response.data
将包含从服务器返回的数据。
发送 POST 请求
要发送 POST 请求,我们可以使用 client.post(url, data, config)
方法:
client.post('https://jsonplaceholder.typicode.com/posts', { title: 'foo', body: 'bar', userId: 1 }) .then(response => console.log(response.data)) .catch(error => console.error(error));
其中,data
参数是要发送的数据。
自定义配置
我们可以在发送请求时传递配置对象来自定义请求头、超时时间等选项:
client.get('https://jsonplaceholder.typicode.com/posts/1', { headers: { 'Authorization': 'Bearer ' + token }, timeout: 10000 }) .then(response => console.log(response.data)) .catch(error => console.error(error));
使用拦截器
rest.js 支持请求拦截器和响应拦截器。我们可以使用 client.interceptors.request.use
和 client.interceptors.response.use
方法添加拦截器:
-- -------------------- ---- ------- -- ------- -------------------------------------- -- - -- ----------- ---------------------------------- - ----------------- ------ ------- -- ----- -- - -- ------ ------ ---------------------- --- -- ------- ----------------------------------------- -- - -- --------- ------ --------- -- ----- -- - -- ------ ------ ---------------------- ---
使用转换器
rest.js 内置了多种转换器,包括 JSON、XML 和 FormData。我们可以在配置对象中指定要使用的转换器:
const { JsonTransformer, RestClient } = require('rest'); const client = new RestClient({ transformer: new JsonTransformer() });
这里使用了内置的 JsonTransformer 转换器。
总结
通过本文,我们学习了如何使用 rest.js 进行 RESTful API 请求,以及如何自定义配置、使用拦截器和转换器等高级功能。在前端开发中,我们经常需要与后端进行数据交互,掌握 rest.js 将会对我们的工作非常有帮助。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/34169