Vue资源发布请求内容类型

时间:2016-09-11 19:22:27

标签: php laravel vue.js vue-resource vue-component

Vue-Resource Post Request:

this.$http.post(form.action, new FormData(form)).then(function (response) {
    FetchResponse.fetch(this, response.data)
})

请求作为内容类型发送:" application / json; charset = utf-8"但PHP Post无法显示数据。

设置标题Vue-Resource:

request.headers.set(' Content-Type','');

但请求内容类型:",multipart / form-data;边界= ---- WebKitFormBoundaryTsrUACAFB1wuhFOR"

在查询开头有一个逗号。

Jquery发布请求:

$.ajax({
    url     : form.action,
    type    : 'POST',
    data    : new FormData(form),
    success : function (reqData) {
        FetchResponse.fetch(ss, reqData)
    },
});

相同的查询与jQuery无缝协作。 jQuery Content-Type:" multipart / form-data;边界= ---- WebKitFormBoundaryTsrUACAFB1wuhFOR"

问题: https://github.com/vuejs/vue-resource/issues/398

1 个答案:

答案 0 :(得分:6)

请尝试发布一个简单的JSON对象并启用“模拟JSON”#39; vue-resource选项:

const formData = {
    someProp: this.someProp,
    someValue: 'some value'
};

this.$http.post(this.postUrl, formData, {emulateJSON: true})
   .then(response => {
        console.log(response.body);
    }, response => {
       console.error(response.body);
    });