首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在axios post上以字符串而不是json的形式发送数据

在axios中,可以通过设置请求头的Content-Type字段为"application/x-www-form-urlencoded"来以字符串形式发送数据,而不是JSON形式。

具体步骤如下:

  1. 首先,确保你已经安装了axios,并在代码中引入axios库。
  2. 创建一个对象,用于存储要发送的数据。例如,我们创建一个名为data的对象,并添加要发送的数据。
  3. 使用qs库将data对象转换为URL编码的字符串。qs是一个常用的库,用于处理URL查询字符串的解析和序列化。
  4. 安装qs库:npm install qs
  5. 引入qs库:import qs from 'qs'
  6. 在axios的post请求中,设置请求头的Content-Type字段为"application/x-www-form-urlencoded",并将转换后的URL编码字符串作为请求体发送。
  7. 示例代码如下:
  8. 示例代码如下:

这样,你就可以以字符串形式而不是JSON形式发送数据了。请注意,以上示例中的URL和数据仅供参考,实际使用时请替换为你自己的URL和数据。

推荐的腾讯云相关产品:腾讯云云服务器(CVM)

产品介绍链接地址:https://cloud.tencent.com/product/cvm

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

node后端接收到axios的post请求体为空

使用axios发送post请求,传入了Object格式的参数,在node后端req.body接收到的参数为空,但是网页上抓包检查时,发现请求的body确实是携带了参数的?...经过漫长的网上冲浪,并查了一下axios的源码,我发现axios的文档上有这样一句话 这就能解释为什么我之前发obj对象数据,请求体携带的确是json格式的数据,说明axios会自动转换数据为json格式后来我又在源码上看到了转换请求体参数格式的相关代码...;charset=utf-8'); return JSON.stringfy(data); } 显然,axios在发送请求时,如果参数对象data不是表单数据格式对象,就会默认把数据转为json...这里要用到axios提供的 qs 库,qs是axios自带的一个库 功能: 里面的stringify方法可以将一个json对象直接转为(以?和&符连接的形式)。...使用该库,就可以自动转化,而不需要手动去拼接,所以我只要将我的参数对象通过qs的stringfy方法转换为表单数据格式,再通过axios发送给服务器,body-parser就能解析成key,value的键值对形式

9410

解决:node后端接收到axios的post请求体竟为空?

前言: 在做项目时,你们是否会遇到这样一个问题: 使用axios发送post请求,传入了Object格式的参数,在node后端req.body接收到的参数为空,但是网页上抓包检查时,发现请求的body...平平无奇的axios进行post提交表单的代码 怎么样,乍一看是不是万无一失?(不是) 于是我去页面进行了测试(Later.... ? ​ 我直接蒟蒻问号???...这就能解释为什么我第一次发送的是obj对象数据,请求体携带的确是json格式的数据,说明axios会自动转换数据为json格式 后来我又在源码上看到了转换请求体参数格式的相关代码 if(utils.isURLSearchParams...这里要用到axios提供的 qs 库 qs库 介绍: qs是axios自带的一个库 功能: 里面的stringify方法可以将一个json对象直接转为(以?和&符连接的形式)。...使用该库,就可以自动转化,而不需要手动去拼接 所以我只要将我的参数对象通过qs的stringfy方法转换为表单数据格式,再通过axios发送给服务器,body-parser就能解析成key,value的键值对形式

7.9K62
  • Vue 09.前后端交互

    // 在then方法中,也可以直接return数据而不是Promise对象,在后面的then中就可以接收到数据了 p.then(function(data){ console.log(data...中可以设置method、headers、body HTTP协议,它给我们提供了很多的方法,如POST,GET,DELETE,UPDATE,PATCH和PUT GET // GET参数传递 - 传统URL...请求传递json数据 fetch('http://localhost:3000/books', { method: 'post', body: JSON.stringify({ uname...的形式传递参数 通过 restful 形式传递参数 通过 params 形式传递参数 post 和 put 请求传递参数 通过选项传递参数,默认 JSON 格式 通过 URLSearchParams...ajax # 3.1 使用 async 来 让异步的代码 以同步的形式书写 queryData: async function() { // 调用后台接口获取图书列表数据

    6K30

    axios配置请求头content-type「建议收藏」

    (一般我们放在了请求接口的公共文件中引用) npm install axios -S axios 发送post请求时默认是直接把 json 放到请求体中提交到后端的,axios默认的请求头content-type...content-type的三种常见数据格式: // 1 默认的格式请求体中的数据会以json字符串的形式发送到后端 'Content-Type: application/json ' // 2...请求体中的数据会以普通表单形式(键值对)发送到后端 'Content-Type: application/x-www-form-urlencoded' // 3 它会将请求体的数据处理为一条消息,以标签为单元.../form-data,我们前端该如何配置: 应用场景:对于这种类型的数据,我们常见前端页面上传个人图像,然后点击保存发送后端修改原始数据 let params = new FormData() params.append...如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

    4.8K40

    Java学习笔记-全栈-web开发-10-Ajax&JSON&Axios

    1.4 案例(POST) ajax的post请求流程 a.创建请求对象 b.连接 c.设置content-type请求头,如果不设置请求头,发送请求会失败 d.发送请求,传递请求参数 e.接收响应 POST...跟GET差不多,区别就在于 需要设置content-type请求头 在send发送参数,而不是拼接在url后面 1.4.1 js中的ajax ?...2.2 入门 2.2.1 JSON基本数据形式–字典 键值对 { "firstName":"Bill" , "lastName":"Gates" } 相当于Java中的map,python中的字典。...2.2.2 JSON复合嵌套数据形式 就像是函数嵌套,只要符合最基本的 { "firstName":"Bill" , "lastName":"Gates" } 如何嵌套,就看你的想象力。...3.1.2 model转JSON ? 4. ajax处理JSON 原理: Servlet:将model的数据写为map,利用jackson将map内容转为json字符串给前端。

    1.7K20

    vue.cli项目封装全局axios,封装请求,封装公共的api和调用请求的全过程

    文件 三、封装axios实例 —— request.js 四、封装请求——http.js 五、正式封装API,用于发送请求——api.js 六、如何在vue文件中调用 结语 前言 在做vue中大型项目的时候...,官方推荐使用axios,但是原生的axios可能对项目的适配不友好,所以,在工程开始的来封装一下axios,保持全项目数据处理的统一性。...config.data = JSON.stringify(config.data);为什么不用qs.stringify,因为我的后台想要的只是json类型的传参,而qs转换会转换成为键值对拼接的字符串形式...:form表单数据被编码为key/value格式发送到服务器(表单默认的提交数据的格式),你可以根据实际情况去配置自己需要的; 如果最终配完成后,报错连接服务器失败,那是正常的,因为示例配置的服务器地址...timeout: 3 * 1000 }) 在之前封装公共接口的baseUrl时候,用了webpack中的全局变量process.env.BASE_API,而不是直接写死ip,也是为了适应多个后台或者开发的时候的

    3.6K21

    axios笔记(一) 简单入门

    query 参数 两种参数区别:query 参数是从所有的数据中筛选,所以最后是数组的形式;params 参数则是特定查找的形式,所以最后是对象的形式 使用 axios 请求 REST 接口...ajax 引擎帮忙发送) 浏览器端发送请求,只有 XHR 或 fetch 发出的才是 ajax 请求,其他的都不是 ajax 请求 浏览器端接收到响应(一般请求浏览器会自动更新页面,而 ajax...请求需要手动更新) 一般请求:浏览器会直接显示响应体数据,即刷新/跳转页面 ajax 请求:浏览器不会对页面进行任何更新操作,而只是调用监视的回调函数并传入响应相关数据 3....POST、PUT 等需要修改服务器端的资源的请求时会发送 OPTIONS 请求,查看是否能够修改,即预请求。...而 GET 请求不需要,因为 GET 请求不需要修改服务器上的资源 学习链接:尚硅谷_axios 核心技术

    1.6K20

    JavaWeb核心篇(6)——Ajax

    此时需要判断响应的数据是否是 "true" 字符串,如果是说明用户名已经占用给出错误提示;如果不是说明用户名未被占用清除错误提示。...> 发送异步请求携带参数 后面我们使用 axios 发送请求时,如果要携带复杂的数据时都会以 JSON 格式进行传递,如下 axios({ method:"post",...而 axios 是一个很强大的工具。...前端发送请求时,如果是复杂的数据就会以 json 提交给后端;而后端如果需要响应一些复杂的数据时,也需要以 json 格式将数据响应回给浏览器。...前后端需以 JSON 格式进行数据的传递;由于此功能是查询所有的功能,前端发送 ajax 请求不需要携带参数,而后端响应数据需以如下格式的 json 数据 环境准备 将 02-AJAX\04-资料\3

    8.7K30

    一比一还原axios源码(零)—— 是结束亦是开始

    来发送请求,服务器返回的数据再通过前端js代码,来渲染到页面上。...我们知道axios是传入的params对象,所以这就是我要实现的源码之一,再然后,data是个对象,但是body的请求体接收的是一个json字符串,所以我们也要转换。...XMLHttpRequest是不接受对象形式的body的,那么我们把它转换成JSON字符串呢?...2、EventSource   EventSource可以让服务器主动发送数据到我们的代码中, 当不需要以消息形式将数据从客户端发送到服务器时,这使它们成为绝佳的选择。...使用此API,您可以向服务器发送消息并接收事件驱动的响应,而无需通过轮询服务器的方式以获得响应,可参考MDN。

    94420

    vue post请求参数在controller层无法封装问题

    使用这种编码格式时发送到后台的数据长得像这样子 ? 不同字段以–boundary开始,接着是内容描述信息,最后是字段具体内容。...如果传输的是文件,还要包含文件名和文件类型信息 3. application/json axios默认提交就是使用这种格式。如果使用这种编码方式,那么传递到后台的必须是序列化后的json字符串。...我们可以将application/json与application/x-www-form-urlencoded发送的数据进行比较 首先是application/json: ?...这里可以明显看出application/x-www-form-urlencoded上传到后台的数据是以key-value形式进行组织的,而application/json则直接是个json字符串。...解决思路 既然我们知道axios post方法默认使用application/json格式编码数据,那么解决方案就有两种,一是后台改变接收参数的方法,另一种则是将axios post方法的编码格式修改为

    1.2K30

    Ajax(三)

    其中,axios 中的 axios.get()、axios.post()、axios() 方法,都是基于 XMLHttpRequest(简称:XHR) 封装出来的。...主要有两种数据交换格式: XML JSON ⭐ JSON 概念 JSON(全称:JavaScript Object Notation)是一种数据交换格式,它本质上是用字符串的方式来表示对象或数组类型的数据...把 JSON 数据转换为 JS 数据 调用浏览器内置的 JSON.parse() 函数,可以把 JSON 格式的字符串转换为 JS 数据 例如: // 1) json字符串表示的对象转化为js对象...把 JS 数据转换为 JSON 数据 调用浏览器内置的 JSON.stringify() 函数,可以把 JS 数据转换为 JSON 格式的字符串 例如: // 1) js对象转化为json字符串...把字符串转换为真实数据的过程,叫做反序列化 JSON文件 概念: 以.json结尾的文件,里面存放一些配置信息 package.json 格式要求: 最外层要是 {} 或 [] 属性名必须要使用

    74430

    前后端交互的弯弯绕绕

    ,本质上还是对原生XMLHttpRequest的封装,用于浏览器、nodejs HTTP客户端:HTTP请求响应工具;它基于 Promise,提供了一种简洁且强大的方式来发送异步请求,使用 Axios开发者可以轻松地发送...,这样,你就可以在代码中引用路由名称,而不是写出完整的URL路径对于维护|管理大型应用的路由非常有帮助,当路径需要更改时,你只需要更新路由配置,而不需要修改引用该路由的每个地方根据省份|市区查询下属区县...;在旧浏览器页面在向服务器请求数据时,因为返回的是整个页面的数据,页面都会强制刷新一下,这对于用户来讲并不是很友好;我们只是需要修改页面的部分数据,但是从服务器端发送的却是整个页面的数据,十分消耗网络资源...响应的能力;配置请求: 使用 open 方法配置请求的类型(如 “GET” 或 “POST”)、URL 和是否异步发送请求: 使用 send 请求,send({});参数是通过请求体携带的数据,而GET...方便:需要手动设置请求头:Content-Type:application/json 告诉服务器端,发送的内容类型是 JSON 字符串;传递的请求体数据,也需要手动的进行JSON转换;send({k:

    11220

    axios使用指南

    这里有一点需要特别注意,用axios发送post请求,数据会默认转化为json格式发送到后端,并且会自动设置默认请求头:Content-Type:application/json; charset=utf8...而用jquery的ajax发送post请求,本质是模仿表单请求,数据会以查询字符串格式发送到后端,默认请求头为:Content-Type:application/x-www-formdata-urlencoded...这里前端工程师需要注意的是:前端在发送请求时需要知道,后端能够解析哪种格式的数据。 如果后端程序只支持解析json格式的数据,那么用axios发送post请求的默认方式则没有任何问题。...但是如果后端服务不支持解析json格式的数据,只支持查询字符串格式的数据(name=zs&age=18,类似这样的数据格式叫做查询字符串格式),那么axios在发送post请求时则需要修改两处配置。...其次将发送的数据改为查询字符串格式,代码配置如下: ? 浏览器network截图: ? 上面的配置需要每次发送post请求都需要重新配置,能不能改成默认配置呢?看如下代码: ?

    2.7K41

    鸿蒙应用开发从入门到入行 - 篇7:http网络请求

    一般情况下:post、put等请求传入对象,get请求传`key=value`形式字符串 extraData: "data to send", }, (err: BusinessError, data...| ArrayBuffer联合类型中的一种,因此如果服务器返回的是JSON字符串那就是string类型(例如本接口返回的就是JSON),想要使用,还得把JSON字符串转成js数据。...当然你也可以用其他形式转成字符串,例如JSON.parse(data.result + '')JSON.parse(`${data.result}`)特别需要注意的是 JSON.parse 在API12...因此,上述发请求时的第三个参数(请求完成的回调)可以不写,而改成then与catch的方式,如// get请求 const httpRequest = http.createHttp(...是不是觉得很头疼呢?所以真实开发场景下,一般都会对http请求做封装,方便自己调用。但是自行封装,需要考虑的情况过多,例如get与post请求参数格式一般不一样。

    14920

    Axios携带数据发送请求及后端接收方式

    数据类型 方法 内容类型(Content-Type) 编码方式 GET \ Query String Parameters POST application/json Request Payload...编码方式 Query String Parameters:参数的传递方式为拼接在网址上,格式为?加使用&连接的参数,空格则用+表示。...自带qs库,无需再次安装) qs是查询字符串解析和将对象序列化的库,qs的两个主要使用方法: qs.stringify():将对象序列化成url的形式,以&进行拼接 qs.parse():将url解析成对象形式...,也就是json数据: 而使用QS序列化的话,是不用再将参数中的对象序列化的:       axios         .post(           '/api/ahzoo',          ...: 和接收普通的参数一样,用字符串类型数据接收,或者直接从Paramer中获取 @RequestMapping("api/ahzoo") public void toGetInfo(String id

    10.2K52

    Fetch还是Axios——哪个更适合HTTP请求?

    在响应对象中,具有以下值: data,这是实际的响应主体 status,调用的 HTTP 状态,例如 200 或 404 statusText,以文本消息形式返回的 HTTP 状态,例如 ok headers...JSON 如前所述,当我们在使用 .fetch() 方法的时候,需要对响应数据使用某种方法,当我们在发送带有请求的 body 时,需要对数据进行字符串化。...在 axios 中,它是自动完成的,所以我们只需在请求中传递数据或从响应中获取数据。它是自动字符串化的,所以不需要其他操作。 让我们看看如何从 fetch() 和 axios 获取数据。...在一个较大的项目中,如果你创建了大量的调用,那么使用 axios 来避免重复代码会更舒服。 错误处理 在这一点上,我们还需要给 axios 点赞,因为处理错误是非常容易的。...大多数浏览器和 Node.js 环境都支持 Axios,而现代浏览器仅支持 Fetch,并且某些版本可能会与旧版本一起发布。

    5K20
    领券