vue直接发送一个请求

fastTest: function() {

                let host = this.form.addr;

                if (host.indexOf("http://") ===0){

                    this.form.addr = host.slice(7)

                }

                if (host.indexOf("https://") ===0){

                    this.form.addr = host.slice(8)

                }

                console.log(this.form.addr)

                this.$refs.form.validate((valid) => {

                    if (valid) {

                        this.loadingSend = true;

                        let self = this;

                        let _parameter = new Object();

                        let headers = new Object();

                        self.form.statusCode = '';

                        self.form.resultData = '';

                        self.form.resultHead = '';

                        for (let i = 0; i < self.form.head.length; i++) {

                            var a = self.form.head[i]["name"];

                            if (a) {

                                headers[a] = self.form.head[i]["value"]

                            }

                        }

                        let url = self.form.Http4 + "://" + this.form.addr;

                        let _type = self.radio;

                        if (_type === 'form-data') {

                            if (self.radioType) {

                                for (let i = 0; i < self.parameters.length; i++) {

                                    var a = self.parameters[i]["name"];

                                    if (a) {

                                        _parameter[a] = self.parameters[i]["value"];

                                    }

                                }

                                _parameter = JSON.stringify(_parameter)

                            } else {

                                _parameter = self.form.parameter

                            }

                        } else {

                            // POST(url, self.form.parameterRaw, headers)

                            _parameter = self.form.parameterRaw;

                        }

                        if (self.form.parameterRaw && _type === "raw") {

                            if (!self.isJsonString(self.form.parameterRaw)) {

                                self.$message({

                                    message: '源数据格式错误',

                                    center: true,

                                    type: 'error'

                                })

                            } else {

                                $.ajax({

                                    type: self.form.request4,

                                    url: url,

                                    async: true,

                                    data: _parameter,

                                    headers: headers,

                                    timeout: 5000,

                                    dataType: 'jsonp',

                                    success: function (data, status, jqXHR) {

                                        console.log(data)

                                        self.loadingSend = false;

                                        self.form.statusCode = jqXHR.status;

                                        self.form.resultData = data;

                                        self.form.resultHead = jqXHR.getAllResponseHeaders()

                                    },

                                    error: function (jqXHR, error, errorThrown) {

                                        self.loadingSend = false;

                                        self.form.statusCode = jqXHR.status;

                                        self.form.resultData = jqXHR.responseJSON;

                                        self.form.resultHead = jqXHR.getAllResponseHeaders()

                                    }

                                })

                            }

                        } else {

                            $.ajax({

                                type: self.form.request4,

                                url: url,

                                async: true,

                                data: _parameter,

                                headers: headers,

                                timeout: 5000,

                                success: function (data, status, jqXHR) {

                                    self.loadingSend = false;

                                    self.form.statusCode = jqXHR.status;

                                    self.form.resultData = data;

                                    self.form.resultHead = jqXHR.getAllResponseHeaders()

                                },

                                error: function (jqXHR, error, errorThrown) {

                                    self.loadingSend = false;

                                    self.form.statusCode = jqXHR.status;

                                    self.form.resultData = jqXHR.responseJSON;

                                    self.form.resultHead = jqXHR.getAllResponseHeaders()

                                }

                            })

                        }

                    }

                })

            },

posted @ 2019-03-03 11:38  hayabky  阅读(714)  评论(0)    收藏  举报