1. 程式人生 > >向伺服器請求資料時幾種不同的傳參方式

向伺服器請求資料時幾種不同的傳參方式

向伺服器請求資料時,不同的傳參方式也是決定是否順利請求回資料的決定因素之一

根據伺服器的響應方式,客戶端的提交形式有大致有以下幾種:

1.payload方式:

payload是一種以JSON格式進行資料傳輸的一種方式,在我們請求的headers裡設定content-type:application/json,則引數要以payload的形式傳給伺服器,伺服器接受的是JSON物件

2.formData方式:

請求頭headers設定 content-type:application/x-www-form-urlencoded,則引數要以form data的形式傳遞。form data方式引數不會顯式的出現在請求路徑中。

3.Query String Parameters

對比formData方式,這種方式引數是直接拼接在url後面,如需要傳參a=1, b=2:http:www.baidu.com/s?a=2&b=3,這種方式引數是顯式的出現在請求路徑中的。

關於在axios中使用formData方式傳遞引數問題:

axios({
    url: "xxx",
    method: "POST",
    headers: {
         "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8"
    },
    data: Qs.stringify({ id:xxx ,type:xxx})
})

在data傳遞引數部分,需用qs.stringify把引數序列化為url形式:id=123&type=a

JSON.stringify也是用於序列化,把一個物件解析成字串,注意區分