5

Vue-资源发布请求:

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

请求以 Content-Type:"application/json;charset=utf-8" 发送,但 PHP Post 无法显示任何数据。

设置标题 Vue 资源:

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

但是 Request Content-Type:", multipart/form-data; boundary=----WebKitFormBoundaryTsrUACAFB1wuhFOR"

查询的开头有一个逗号。

Jquery 发布请求:

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

相同的查询与 jQuery 无缝协作。jQuery 内容类型:“multipart/form-data;边界=----WebKitFormBoundaryTsrUACAFB1wuhFOR”

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

4

1 回答 1

10

请尝试发布一个简单的 JSON 对象并启用 'emulateJSON' 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);
    });
于 2017-03-07T08:47:21.663 回答