vue进行post和get请求实例讲解

目录
  • 一、基本使用方法
    • 1、get请求
    • 2.Post请求

使用axios:

<script src="https://unpkg.com/axios/dist/axios.min.js"></script>

一、基本使用方法

1、get请求

// Make a request for a user with a given ID
axios.get('/user?ID=12345')
 .then(function (response) {
  console.log(response);
 })
 .catch(function (error) {
  console.log(error);
 });
 
// Optionally the request above could also be done as
axios.get('/user', {
  params: {
   ID: 12345
  }
 })
 .then(function (response) {
  console.log(response);
 })
 .catch(function (error) {
  console.log(error);
 });

2.Post请求

axios.post('/user', {
 firstName: 'Fred',
 lastName: 'Flintstone'
})
.then(function (response) {
 console.log(response);
})
.catch(function (error) {
 console.log(error);
});

 简单示例:

// 在进行 post 和 get 请求的时候,使用 axios 进行访问
// 进行 get 请求
axios.get(url).then(function (response){
    console.log(response);
}).catch(function(error){
    console.log(error);
});
// 进行post 请求            
axios.post(url,{firstName:'Fred',lastName:'Flintstone'}).then(function (response) {
    console.log(response);
}).catch(function (error) {
    console.log(error);
});

这样发送请求,虽然是可以发送,但是携带的参数,是一个json字符串,会出现问题。所以我们在用post发送请求的时候,需要这样:

axios({  
    method:'post',  
    url:url,  
    data:{title:this.title,content:this.content},  
    headers:{'Content-Type': 'application/x-www-form-urlencoded'},  
    transformRequest: function(obj) {  
        var str = [];  
        for(var p in obj){  
            str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p]));  
        }  
        return str.join("&");  
    }  
}).then((res)=>{
    console.log(res.data);
});

上面这种只能提交一些简单的数据,对于复杂的数据,可以考虑使用 QS 对数据进行处理。

使用方法,如果找不到QS文件,可以只用 npm 安装:

npm install qs

下载这个文件之后,使用 script 标签正常引入即可。

使用方法:

var formData = Qs.stringify({imgIds: [48,49],});
axios.post(url,Qs.stringify(this.formData)).then(function (response) {
    console.log(response);
}).catch(function (error) {
    console.log(error);
});

或者是:

axios({
    method: 'post',
    url:url,
    data:Qs.stringify(this.formData),
}).then((res)=>{
    console.log(res);
});

到此这篇关于vue进行post和get请求实例讲解的文章就介绍到这了,更多相关vue进行post和get请求内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • vue进行post和get请求实例讲解

    目录 一.基本使用方法 1.get请求 2.Post请求 使用axios: <script src="https://unpkg.com/axios/dist/axios.min.js"></script> 一.基本使用方法 1.get请求 // Make a request for a user with a given ID axios.get('/user?ID=12345')  .then(function (response) {   console.

  • vue处理get/post的http请求的实例

    目录 一.使用Vue.http/this.$http 1.GET请求 2.POST请求 二.使用Vue.resource/this.$resource GET请求 POST请求 inteceptor–在请求前和请求后附加行为 实例–为所有的请求处理加一个loading 拓展 参考文章 一.使用Vue.http/this.$http 在发起请求的时候,为了减少作用域链的搜索,建议使用一个局部变量来接受this 1. GET请求 // 基于全局Vue对象使用http Vue.http.get('/s

  • vue中axios处理http发送请求的示例(Post和get)

    本文介绍了vue中axios处理http发送请求的示例(Post和get),分享给大家,具体如下: axios中文文档 https://github.com/mzabriskie/axios#using-applicationx-www-form-urlencoded-format   axios文档 在处理http请求方面,已经不推荐使用vue-resource了,而是使用最新的axios,下面做一个简单的介绍. 安装 使用node npm install axios 使用cdn <scrip

  • Vue axios全局拦截 get请求、post请求、配置请求的实例代码

    下面通过一段代码给大家介绍Vue axios全局拦截 get请求.post请求.配置请求,具体代码如下所述: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <script src="../node_modules/vue/dist/vue.js"&g

  • vue axios数据请求get、post方法及实例详解

    我们常用的有get方法以及post方法,下面简单的介绍一下这两种请求方法 vue中使用axios方法我们先安装axios这个方法 npm install --save axios 安装之后采用按需引入的方法,哪个页面需要请求数据就在哪个页面里引入一下. import axios from 'axios' 引入之后我们就可以进行数据请求了,在methods中创建一个方法 methods:{ getInfo(){ let url = "url" axios.get(url).then((r

  • 解决vue $http的get和post请求跨域问题

    vue $http的get和post请求跨域问题 首先在config/index.js中配置proxyTable proxyTable: { '/api':{ // target:'http://jsonplaceholder.typicode.com', target:'http://localhost:9080', changeOrigin:true, pathRewrite:{ '/api':'' } } 用户名和密码登录的表单提交 methods: { // get请求 // submi

  • vue中get和post请求的区别点总结

    本教程操作环境:windows7系统.vue2.9.6版,DELL G3电脑. vue中get和post请求的区别 1.get请求 在GET请求中参数是跟在URL后面,即参数放在header中.能传的参数较小.使用params. this.$http.get(' URL ').then(result=>{ if(result.status===0){ // 成功了 this.list=result.message; // 这里是假设被请求的数据表中的列表名称为message }else{ //

  • vue 实现 tomato timer(蕃茄钟)实例讲解

    近期在学习[时间管理]方面的课程,其中有一期讲了蕃茄工作法,发现是个好多东西.蕃茄工作法核心思想就是:工作25分钟,休息5分钟.如果您好了解更多可以自行度娘. 在加上本人是一个程序猿,就想用程序的方式来表达对此工作法的敬意.因此就产生了用vue实现一个tomato timer的想法. 一.vue如何实现他的 1. 依赖的包 "devDependencies": { "babel-plugin-lodash": "^3.2.11", "b

  • vue组件初学_弹射小球(实例讲解)

    1. 定义每个弹射的小球组件( ocicle ) 2. 组件message自定义属性存放小球初始信息(可修改) { top: "0px", //小球距离上方坐标 left: "0px", //小球距离左边坐标 speedX: 12, //小球每次水平移动距离 speedY: 6 //小球每次垂直移动距离 } 3. 思路 3.1 定时器设置小球每一帧移动 3.2 初始方向:isXtrue为true则小球为横坐标正方向: isYtrue为true则小球为纵坐标正方向 3

  • promise处理多个相互依赖的异步请求(实例讲解)

    在项目中,经常会遇到多个相互依赖的异步请求.如有a,b,c三个ajax请求,b需要依赖a返回的数据,c又需要a和b请求返回的数据.如果采用请求嵌套请求的方式自然是不可取的.导致代码难以维护,如何请求很多.会出现很多问题. Promise就是解决多个异步请求的问题. Promise是ES6提供的一个对象,用来传递异步操作的消息. Promise有三种状态:Pending(进行中).Resolved(已完成,又称 Fulfilled)和 Rejected(已失败). 直接上代码.有a,b请求,b依赖

  • vue项目中使用ueditor的实例讲解

    以vue-cli生成的项目为例 1.static文件夹下先放入ueditor文件 2.index.html添加如下代码 <script type="text/javascript" charset="utf-8" src="static/ueditor/ueditor.config.js"></script> <script type="text/javascript" charset="

  • vue之父子组件间通信实例讲解(props、$ref、$emit)

    组件是 vue.js 最强大的功能之一,而组件实例的作用域是相互独立的,这就意味着不同组件之间的数据无法相互引用.那么组件间如何通信,也就成为了vue中重点知识了.这篇文章将会通过props.$ref和 $emit 这几个知识点,来讲解如何实现父子组件间通信. 在说如何实现通信之前,我们先来建两个组件father.vue和child.vue作为示例的基础. //父组件 <template> <div> <h1>我是父组件!</h1> <child>

  • vue中进行微博分享的实例讲解

    1.首先要在页面写出点击可进行微博分享的入口,样式因自己项目而定: <li class="bottomIcon_5 shareSina"><a href="javascript:;" rel="external nofollow" target="_blank"></a><div class="shareTxt">微博</div></li&g

  • vue 实现边输入边搜索功能的实例讲解

    效果图: 搜索分类2种情况,一般的是当用户输入完,点击确定的按钮在向后发送请求,还有一种就是的我一边输入,一边向后台发送请求,但是会产生一个性能的问题,就是一直发请求造成页面的卡顿,这里就是使用截流函数,当用户每次点击键盘之间超过300ms就发送请求,否则不请求 search.vue <template> <div id="search"> <input type="text" class="search" plac

  • vue进行图片的预加载watch用法实例讲解

    watch应用场景 我想信图片预加载大家肯定都有接触过,当图片量大的时候,为了保证页面图片都加载出来的时候,我们才把主页面给显示出来,再进行一些ajax请求,或者逻辑操作 那此时你用computed对这种监听一个数据然后进行一系列逻辑操作和ajax请求,那watch再适合不过了,如果用computed的话那你连实现都实现不了,只有用watch监听 <template> <div v-show=show> <img src="https://img.alicdn.co

随机推荐