+
80
-

js jquery vue 如何设置ajax请求的content-type?

请问js jquery vue 如何设置ajax请求的content-type?

网友回复

+
0
-

首先我们看jquery的ajax设置content-type,我们设置content-type为application/json;代码如下:

$.ajax({
  type: "POST",
  url: "test.php",
   data: JSON.stringify({
      username: "111", "password": "123"
    }),
   dataType: "json",
   contentType: "application/json;charset=utf-8",
   success: function(data) {
                    if (!data.err) {
                        console.log(data.msg);
                    } else {
                        console.log("出现错误:" + data.msg);
                    }
                },
                error: function(jqXHR) {
                    alert("发生错误:" + jqXHR.status);

                },
 });

那么原生js如何设置content-type呢

        var request = new XMLHttpRequest();
        request.open("POST", "test.php");

        request.setRequestHeader("Content-type", "application/json");
        request.send(JSON.stringify({
            username: "111", "password": "123"
        }));
        request.onreadystatechange = function() {
            if (request.readyState === 4) {
                if (request.status === 200) {
                    var data = JSON.parse(request.responseText);
                    if (!data.err) {
                        console.log(data.msg);
                    } else {
                        console.log("出现错误:" + data.msg);
                    }
                } else {
                    alert("发生错误:" + request.status);
                }
            }
        }

那么vue 的axios设置content-type

        axios({
            method: 'post',
            url: 'test.php',
            headers: {
                'Content-Type': 'application/json',
                'X-Requested-With': 'XMLHttpRequest'
            },
            data: {
                username: '111',
                password: '123'
            }
        })
        .then(function (response) {
            console.log(response);
        })
        .catch(function (error) {
            console.log(error);
        });

那么如果vue-resource

 this.$http.get('api', {
                    headers: {
                        'Content-Type': 'application/json',
                        'X-Requested-With': 'XMLHttpRequest'
                    },
                    params:  JSON.stringify({
      username: "111", "password": "123"
    })}).then(function(res) {
                    document.write(res.body);
                }, function(res) {
                    console.log(res.status);
                });

我知道答案,我要回答