分享更有价值
被信任是一种快乐

react fetch如何请求数据

文章页正文上

这篇文章主要介绍“react fetch如何请求数据”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“react fetch如何请求数据”文章能帮助大家解决问题。 react fetch请求数据的方法:1、将请求的方法放在生命周期的“componentDidMount”里;2、封装fetch请求;3、通过“function checkStatus(response){…}”方法检查请求状态;4、使用封装好的请求并在服务端或浏览器打印结果即可。React Fetch请求1.fetch2.React使用fetch请求的方法一般放在生命周期的componentDidMount里请求的数据基本格式

importReactfrom'react'
classRequestStuextendsReact.Component{
constructor(props){
super(props)
this.state={
test:{},
arr:[]
}
}
componentDidMount(){
fetch('http://localhost/console/scene/scenedetaillist',{
method:'GET',
headers:{
'Content-Type':'application/json;charset=UTF-8'
},
mode:'cors',
cache:'default'
})
.then(res=>res.json())
.then((data)=>{
console.log(data)
this.setState({
test:data
},function(){
console.log(this.state.test)
letcom=this.state.test.retBody.map((item,index)=>{
console.log(item.id)
return
  • {item.name}
  • })
    this.setState({
    arr:com
    },function(){
    console.log(this.state.arr)
    })
    })
    })
    }
    render(){
    return(

      {
      this.state.arr
      }

    )
    }
    }
    exportdefaultRequestStu
    请求后显示:3.封装fetch请求helper.js

    //全局路径
    constcommonUrl='http://127.0.0.1:3456'
    //解析json
    functionparseJSON(response){
    returnresponse.json()
    }
    //检查请求状态
    functioncheckStatus(response){
    if(response.status>=200&&response.status({err}))
    }

    使用封装好的请求

    importReactfrom'react'
    importrequestfrom'./helper.js'
    classRequestDemoextendsReact.Component{
    componentDidMount(){
    request({
    url:'/posttest',
    method:'post',
    data:{"Header":{"AccessToken":"eyJ0eXBlIjoiSldUIiwiYWxnIjoiSFM1MTIifQ.eyJzdWIiOiIxMDYiLCJleHBpciI6MTUxMDczODAzNjA5MiwiaXNzIjoiIn0.eo000vRNb_zQOibg_ndhlWbi27hPt3KaDwVk7lQiS5NJ4GS4esaaXxfoCbRc7-hjlyQ8tY_NZ24BTVLwUEoXlA"},"Body":{}}
    }).then(function(res){
    console.log(res)
    })
    }
    render(){
    return(
    
    test
    ) } }免费云主机、域名 exportdefaultRequestDemo

    服务端打印浏览器打印附赠helper类

    functionparseJSON(response){
    returnresponse.json()
    }
    functioncheckStatus(response){
    if(response.status>=200&&response.status{
    if(res.retCode==='0001'){
    localStorage.setItem('x-access-token',res.retBody.AccessToken)
    return'success'
    }
    elseif(res.retCode==='0002'){
    return'error'
    }
    elseif(res.retCode==='0003'){
    return'error'
    }else{
    return;
    }
    
    })
    .catch(err=>({err}))
    }
    /**
    *普通请求
    *@param{*url,*method,*data}options
    */
    exportfunctionrequest(options={}){
    constAuthorization=localStorage.getItem('x-access-token')
    const{data,url}=options
    options={...options}
    options.mode='cors'
    deleteoptions.url
    if(data){
    deleteoptions.data
    options.body=JSON.stringify(data)
    }
    options.headers={
    'x-access-token':Authorization,
    'Content-Type':'application/json;charset=UTF-8'
    }
    returnfetch(url,{...options,credentials:'include'})
    .then(checkStatus)
    .then(parseJSON)
    .catch(err=>({err}))
    }

    关于“react fetch如何请求数据”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注云技术行业资讯频道,小编每天都会为大家更新不同的知识点。

    相关推荐: react的合成事件是什么

    本篇内容介绍了“react的合成事件是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!React合成事件是React模拟原生DOM事件所有能力的一个事件对象,…

    文章页内容下
    赞(0) 打赏
    版权声明:本站采用知识共享、学习交流,不允许用于商业用途;文章由发布者自行承担一切责任,与本站无关。
    文章页正文下
    文章页评论上

    云服务器、web空间可免费试用

    宝塔面板主机、支持php,mysql等,SSL部署;安全高速企业专供99.999%稳定,另有高防主机、不限制内容等类型,具体可咨询QQ:360163164,Tel同微信:18905205712

    主机选购导航云服务器试用

    登录

    找回密码

    注册