JS Easy http Library 2: ES6 fetch + arrow+class

重写easy http library

加入 fetch + arrow+class

fetch中传入url;
post方法需要传入data,并标记为post方法;
header中加入data的保存格式——json;

library.js

//Easy http2 Library
//加入 fetch + arrow+class

class EasyHTTP{
  //Make HTTP get request
  get(url){
    return new Promise((resolve,reject)=>{
          fetch(url)
          .then(res => res.json())
          .then(data=>resolve(data))
          .catch(err=>reject(err));
    })
  }

  //Make Http POST request
  post(url,data){
    return new Promise((resolve,reject)=>{
          fetch(url,{
            method:"POST",
            headers:{
              'Content-type':'application/json',
            },
            body:JSON.stringify(data)
          })
          .then(res => res.json())
          .then(data=>resolve(data))
          .catch(err=>reject(err));
    })
  }

  //Make an HTTP PUT request
  put(url,data){
    return new Promise((resolve,reject)=>{
          fetch(url,{
            method:"PUT",
            headers:{
              'Content-type':'application/json',
            },
            body:JSON.stringify(data)  //传入时要变为string
          })
          .then(res => res.json())
          .then(data=>resolve(data))
          .catch(err=>reject(err));
    })
  }

  //MAKE an HTTP delete request
  delete(url){
    return new Promise((resolve,reject)=>{
          fetch(url,{
            method:"DELETE",
            headers:{
              'Content-type':'application/json',
            }
          })
          .then(res => res.json())
          .then(()=>resolve(`Resource deleted...`))
          .catch(err=>reject(err));
    })
  }
}

app.js

const http= new EasyHTTP;

//Get users
const users =http.get('https://jsonplaceholder.typicode.com/users')
                  .then(data=>console.log(data))
                  .catch(err=>console.log(err));

//User Data
const data = {
  name:'John',
  username:'Johndoe',
  email:'jdoe@gmail.com'
}

//Create Post
const users =http.post('https://jsonplaceholder.typicode.com/users',data)
                  .then(data=>console.log(data))
                  .catch(err=>console.log(err));

//Create PUT
const users =http.put('https://jsonplaceholder.typicode.com/users/2',data)
                  .then(data=>console.log(data))
                  .catch(err=>console.log(err));

//Create DELETE
const users =http.delete('https://jsonplaceholder.typicode.com/users/2')
                  .then(data=>console.log(data))
                  .catch(err=>console.log(err));
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值