An article explains in detail the two ways of passing parameters in axios
axios
Everyone knows very well that one can be used for eitherclient
orserver
to sendhttp
requests library. But it can sometimes be uncomfortable when jointly debugging front-end and back-end, so here I will make a summary. Hope it can help someone who is destined.
Parameter passing methods [Related recommendations: vue.js video tutorial]
There are generally two ways to pass parameters, one is to use
params
, the other is thedata
method, many times the front-end code we see is like this
get request
axios({ method: 'GET', url: 'xxxxx', params: param, }) 或者 axios({ method: 'GET', url: '/xxx?message=' + msg, })
post request
axios({ method: 'POST', url: '/xxxxx', data: param, }) 或者 axios({ method: 'POST', url: '/xxxxx', params: param, })
Correct delivery
The solution to passing parameters is divided into post and get. Let’s take a look at it from here
<span style="background-color:#cccccc;">post</span>
post
Most people will get it wrong. Let's take a look.
<span style="background-color:#cccccc;">data</span>
The form
Speaking from the example, the case code used is the post parameter, and No transcoding is done.
method: 'POST', url: '/xxxxx', data: param, })
Console results
What is passed using data is an object, which is seen in the console The words are
request payload
##node The way to receive parameters in the background
Here I use the backend built byThe acceptance method is as follows:koa
. You need to use the
koa-bodyparserplug-in to parse the parameters of
bodyimport Koa from 'koa'; import bodyParser from 'koa-bodyparser' const app = new Koa(); app.use(bodyParser()); app.listen(9020, () => { console.log('the server is listen 9020 port'); })Copy after login
java The way to receive parameters in the background
I am not that familiar with java, but I know it. If you need to acceptaxios
parameters passed in
data. You need to use the annotation
@responseBodyand use the entity class to receive it.
post data
In the form, no matter which server-side language it is, parameters need to be obtained from
body. Mainly used to pass object parameters. The data obtained in the background is an
obj. Data in the form of data can do many things,
File upload, Form submission etc.
params forms
This is passed in the form of an object. The case code is as follows:
axios({ method: 'POST', url: '/xxxxx', params: param, })
View view sourcer as follows:
node The way to receive parameters in the background
Start the service and above The same, but the way of receiving parameters has changed a bit
java The way of receiving parameters in the background
This person If you can't do it, theoretically you can get the parameters from the address bar. You should also use the annotation @resquestParamget request
get request No matter which method is used, the last parameter will be placed on the path. Using param only axios serializes this parameter for you and splices it into the url. If there is a reason, please check the followingThere are two reasons
When encountering this problem, we need to look at the source code ofProcessingaxios
.Here we will only look at the part that handles parameters. If you are interested, check out the source code yourself.
data
Incore/dispatchRequest.js
in the
axiosfile, We can see that
axoiswill
data
In
default.js
ofaxios
, there is a function that specifically convertsdata
Parametric.
Note: The above is just an example of
data
passing parameters! In fact,data
may also be spliced on the address bar, or file upload, etc. There are too many, here I just explain how to use them.
Processing params
In
adapt/ xhr.js
in theaxios
file, We can see thataxois
will put theparams
parameters into theurl
path.
buildUrl Some key codes are as follows:
Summary
In fact, the front-end and back-end In the end-to-end connection parameter process, for post
requests, if data
does not work, then use params
to pass it. If it does not work, there may be a problem with the backend. .
The above is the detailed content of An article explains in detail the two ways of passing parameters in axios. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

It is very common to use axios in Vue applications. axios is a Promise-based HTTP client that can be used in browsers and Node.js. During the development process, the error message "Uncaught(inpromise)Error: Requestfailedwithstatuscode500" sometimes appears. For developers, this error message may be difficult to understand and solve. This article will explore this

Choice of data request in Vue: AxiosorFetch? In Vue development, handling data requests is a very common task. Choosing which tool to use for data requests is a question that needs to be considered. In Vue, the two most common tools are Axios and Fetch. This article will compare the pros and cons of both tools and give some sample code to help you make your choice. Axios is a Promise-based HTTP client that works in browsers and Node.

Recently, during the development of Vue applications, I encountered a common problem: "TypeError: Failedtofetch" error message. This problem occurs when using axios to make HTTP requests and the backend server does not respond to the request correctly. This error message usually indicates that the request cannot reach the server, possibly due to network reasons or the server not responding. What should we do after this error message appears? Here are some workarounds: Check your network connection due to

How to solve the problem of "Error: NetworkError" when using axios in Vue application? In the development of Vue applications, we often use axios to make API requests or obtain data, but sometimes we encounter "Error: NetworkError" in axios requests. What should we do in this case? First of all, you need to understand what "Error:NetworkError" means. It usually means that the network connection

Efficiently utilize Vue and Axios to implement batch processing of front-end data. In front-end development, data processing is a common task. When we need to process a large amount of data, processing the data will become very cumbersome and inefficient if there is no effective method. Vue is an excellent front-end framework, and Axios is a popular network request library. They can work together to implement batch processing of front-end data. This article will introduce in detail how to efficiently use Vue and Axios for batch processing of data, and provide relevant code examples.

vue3+ts+axios+pinia realizes senseless refresh 1. First download aiXos and pinianpmipinia in the project--savenpminstallaxios--save2. Encapsulate axios request-----Download js-cookienpmiJS-cookie-s//Introduce aixosimporttype{AxiosRequestConfig ,AxiosResponse}from"axios";importaxiosfrom'axios';import{ElMess

1. The axios parameter transfer method corresponding to the @RequestParam annotation takes the following Springjava code as an example. The interface uses the POST protocol, and the parameters that need to be accepted are tsCode, indexCols, and table. For this Spring HTTP interface, how should axios pass parameters? How many methods are there? Let’s introduce them one by one. @PostMapping("/line")publicList

1. Introducing a complete system, front-end and back-end interaction is essential. This process can be divided into the following steps: the front-end initiates a request to the back-end. After the back-end interface receives the front-end parameters, it begins to call methods layer by layer to process the data. The back-end will The final data is returned to the front-end interface. After the front-end request is successful, the data is rendered to the interface. 2. Project structure Front-end technology: axios Back-end technology: SpringBoot (This does not matter, but you must have an access path to the control layer, which is the so-called request. The address corresponding method can use SSM framework, SSH framework, etc.) The above is the general file structure. I believe that everyone’s back-end data processing will be fine. It is nothing more than: the control layer receives the front-end request and calls the corresponding business layer interface method. layer implementation
