实习日记5/26

todolist:

  • 总结axios笔记,不会的再问一下
  • 看书http

记录:

1、使用axios发送请求

 async qingqiu () {
      await this.$http.post('http://lego-analysis-server.dev.hikhub.net/api/setVisit')
        .then(function (response) {
          console.log(this)
          this.message = response.data.message
        }.bind(this))  //这里之前一直是undefined是因为this指向的问题,因为我用的普通函数,它指向window,所以要么使用箭头函数,要么用bind改变它的this指向
        .catch(function (error) {
          console.log('请求失败' + error);
        });
    }

用axios的时候因为this指向的问题出了错误

记得用箭头函数

 async qingqiu () {
      await this.$http.post('http://lego-analysis-server.dev.hikhub.net/api/setVisit')
        .then((response)=> {
          console.log(this)
          this.message = response.data.message
        })  //这里之前一直是undefined是因为this指向的问题,因为我用的普通函数,它指向window,所以要么使用箭头函数,要么用bind改变它的this指向
        .catch((error)=> {
          console.log('请求失败' + error);
        });
    }
  }

2、拉取远端代码,建立本地分支,并且和远端的分支关联:

git fetch origin 分支名  //拉取远端分支
git checkout -b 分支名 origin分支名  //在本地创建一个分支并且和远端的分支相互关联

3、axios默认配置方法:

axios.defaults.baseURL = 'https://api.example.com';  //设置基础url
axios.defaults.headers.common['Authorization'] = AUTH_TOKEN;
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';
import axios from 'axios';
//axios创建实例对象
const http = axios.create({  //里面的参数为配置对象
  baseURL: process.env.VUE_APP_CONTEXT,
  timeout: 30000,
  withCredentials: true,
  headers: { 'X-Requested-With': 'XMLHttpRequest' }
});

//创建出来的http与axios功能几乎一样

4、axios携带参数get和post请求

get请求:

//get请求
 axios.get(url[,config])
 axios.get('www.baidu.com',{params:{id:1}})
 axios.get('www.baidu.com?id=1')

get方法第二个参数是请求配置,它就是一个对象
可以在这些;里面选取进行配置
{
   
  // `baseURL` 将自动加在 `url` 前面,除非 `url` 是一个绝对 URL。
  // 它可以通过设置一个 `baseURL` 便于为 axios 实例的方法传递相对 URL
  baseURL: 'https://some-domain.com/api/',

  // `transformRequest` 允许在向服务器发送前,修改请求数据
  // 只能用在 'PUT', 'POST' 和 'PATCH' 这几个请求方法
  // 后面数组中的函数必须返回一个字符串,或 ArrayBuffer,或 Stream
  transformRequest: [function (data, headers) {
    // 对 data 进行任意转换处理
    return data;
  }],

  // `transformResponse` 在传递给 then/catch 前,允许修改响应数据
  transformResponse: [function (data) {
    // 对 data 进行任意转换处理
    return data;
  }],

  // `headers` 是即将被发送的自定义请求头
  headers: {'X-Requested-With': 'XMLHttpRequest'},

  // `params` 是即将与请求一起发送的 URL 参数   get请求方法
  // 必须是一个无格式对象(plain object)或 URLSearchParams 对象
  params: {
    ID: 12345
  },

  

  // `data` 是作为请求主体被发送的数据   
  // 只适用于这些请求方法 'PUT', 'POST', 和 'PATCH'
  // 在没有设置 `transformRequest` 时,必须是以下类型之一:
  // - string, plain object, ArrayBuffer, ArrayBufferView, URLSearchParams
  // - 浏览器专属:FormData, File, Blob
  // - Node 专属: Stream
  data: {
    firstName: 'Fred'
  },

  // `timeout` 指定请求超时的毫秒数(0 表示无超时时间)
  // 如果请求话费了超过 `timeout` 的时间,请求将被中断
  timeout: 1000,

   // `withCredentials` 表示跨域请求时是否需要使用凭证
  withCredentials: false, // default

  
}

post请求:

axios.post('www.baidu.com',{id:1})
第二个参数就是可以携带的数据,直接这样写
axios.post(url[, data[, config]])

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值