如何使用带有React的Axios构建简单的博客:初学者教程

在本文中,我们将学习如何将Axios与React一起使用以发出API请求,以及如何处理响应。

我们将通过使用伪造的API服务器构建一个简单的博客来学习这一点。

什么是Axios?

Axios是一个JavaScript库,用于从NodeJS或浏览器发出HTTP请求。 这些包括POST,GET和许多其他形式的请求。 它可以在原始Javascript以及许多其他框架中使用,但是我们今天的用例是React

之前与API进行通信通常是通过访存API进行的。 Axios不会替代它,而只是使通信更容易。 它还具有更好的错误处理,轻松的标头配置,并且提高了代码的可读性。

根据NPM文档Axios公司的特点是:制作XMLHttpRequestsbrowserMake从node.js的HTTP请求自动转换为JSON的DataTransform请求和响应数据

您可以在npm文档中获得更多功能

博客项目

我们将使用一种流行的公共API – http://jsonplaceholder.typicode.com/ 。 我们可以通过点击/ ​​posts端点获取帖子列表,通过/ post / id编辑和删除帖子,等等。 您可以检查站点以了解如何使用其端点。

创建一个项目文件夹并更改目录

要在React中使用Axios,您需要安装该软件包。 在执行此操作之前,我们需要我们的项目文件夹。 使用create-react-app快速设置项目。

安装软件包– npm install -g create-react-app

创建项目– create-react-app axios-with-react

更改目录– cd axios-with-react.

启动服务器– npm run start

转到浏览器并输入localhost:3000

您会看到软件包为我们设置的项目。

安装Axios库

npm install axios --save

使用Axios发出请求

Axios处理请求方法,例如POSTGETPUTDELETEPATCH等。我们将在项目中看到一些动作。

GET请求

将App.js的内容更改为以下内容

import React from 'react' ;
import './App.css' ;
import axios from 'axios' ;

class App extends React . Component  {
  state = {
    id :  '' ,
    title : '' ,
    body : '' ,
    data : []
  }
  
  componentDidMount() {
    axios.get( 'https://jsonplaceholder.typicode.com/posts' )
    .then( res => {
      let newData = res.data.slice( 0 , 5 );
      this .setState({
        id : newData[newData.length - 1 ].id + 1 ,
        data : newData
      }, () => console .log( this .state.id))
      console .log(newData)
    })
    .catch( err => console .log( "Couldn't fetch data. Error: " + err))
  }

  render() {

    return (
      < div className = 'ArticleContainer' >
         <h1>Simple blog with React</h1>
        <div className='AddArticle'>
          <b>id of article: </b&
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值