美文网首页
前后端分离后请求问题+vue+axios

前后端分离后请求问题+vue+axios

作者: 艳晓 | 来源:发表于2019-11-07 17:10 被阅读0次

后端用的框架是 spring mvc ,并且在这个方法上使用了注解 @RequestParam,这个就只能从请求的地址中取出参数,也就是只能从 username=admin&pwd=11111 这种字符串中解析出参数,也就是编码格式(content-type)为:application/x-www-form-urlencode。(表单form的enctype属性的编码方式有两种:application/x-www-form-urlencode和multipart/form-data),但是axios会把请求的数据转换成json格式,即为:application/json;charset=UTF-8
链接:https://www.jianshu.com/p/961a4c97e057

我在项目中遇到了同样的问题,所以采用以下的方式解决请求人体

一、在axios中,改变Content-Type为application/x-www-form-urlencode

步骤一:引用QS(qs是axios自带的,直接引入使用即可)

import Qs from 'qs'

步骤二:json格式数据转换: params = Qs.stringify(params);

if (params) {
    params = Qs.stringify(params);
  }

步骤三:设置Content-Type: 'application/x-www-form-urlencoded'

axios({
    method: method,
    url: url,
    data: method === 'POST' || method === 'PUT' ? params : null,
    params: method === 'GET' || method === 'DELETE' ? params : null,
    baseURL: root,
    headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
withCredentials: false
  })

1.1通常情况下,直接使用axios默认的 'Content-Type': 'application/json;charset=UTF-8' 不需要额外的设置。

java服务端用的是 @RequestParam(通过字符串解析出参数) ,其实还有另一种是 @RequestBody(从请求体中获取参数),让后端改成 @RequestBody就可以使用axios默认的 'Content-Type': 。

2、注意前后端分离进行调试经常会报错,在网上搜索会有很多的解决方法。

但是必须注意的是(必须两台电脑无防火墙隔离、在同一工作组,使用ping对方的ip地址,ping通即可)然后再通过代码。

image.png

相关文章

  • 前后端分离后请求问题+vue+axios

    后端用的框架是 spring mvc ,并且在这个方法上使用了注解 @RequestParam,这个就只能从请求的...

  • 2018-12-19

    axios+node请求解决session的问题 当前后端分离利用axios请求后端存储的session时,会在页...

  • [vue-cli]axios跨域问题

    前后端分离,请求跨域问题。1、已经在后端进行了跨域配置: 但是在前端请求时还是有问题: 解决(= =):这段代码需...

  • 初次体验前后端分离

    记录第一次体验前后端分离,自己用SpringBoot+Mybatis写了一个接口,然后前端用Vue+axios实现...

  • Header增加字段导致跨域OPTIONS请求不成功

    今天团队关于跨域请求遇到了一个小问题,在前后端分离请求中会触发跨域OPTIONS请求,而后端使用拦截器处理OPTI...

  • $.ajax的post方式被转成get请求

    问题描述 最近开发时,前后端接口联调遇到点问题: $.ajax post请求被转成get 由于前后端分离,自然有了...

  • 前端跨域是什么?

    1.前后端分离的出现 自从出现前后端分离后,我们调用后端的一些东西,经常会报错。浏览器请求必须遵循同源策略:同域名...

  • Flask跨域问题

    前后端分离,前端访问后端flask的请求时出现跨域问题,访问失败。可以使用flask_cor包来解决问题 1. 安...

  • Nginx 配置项目

    1、 HTTP 请求 2、HTTPS Nginx ssl配置 3、前后端分离(nginx跨域问题) 注意的是,前端...

  • JWT-token—前后端分离架构的api安全问题

    前后端分离架构带来的好处一搜一大堆,我们来看一下分离后后端接口的安全问题。前后端分离架构现状: 前端:vue项目,...

网友评论

      本文标题:前后端分离后请求问题+vue+axios

      本文链接:https://www.haomeiwen.com/subject/cbevbctx.html