在Angular中将文件上载为多部分请求

时间:2017-05-11 07:17:38

标签: angular angular2-services

我使用了以下代码段:

return Observable.create(observer => {
            let formData: FormData = new FormData(),
                xhr: XMLHttpRequest = new XMLHttpRequest();
            formData.append('file', file);
            formData.append('abc', 12);
            formData.append('xyz', 14);

            xhr.onreadystatechange = () => {
                if (xhr.readyState === 4) {
                    if (xhr.status === 200) {
                        observer.next(JSON.parse(xhr.response));
                        //console.log("response=", JSON.parse(xhr.response));
                        observer.complete();
                    } else {
                        observer.error(xhr.response);

                    }

                    return xhr.response;
                }
            };

            xhr.open('POST', url, true);
            xhr.setRequestHeader('access', `xxxxx`);
            xhr.send(formData);
        });

这很好用,但我想用Angular 2方式,而不是简单的JavaScript方式。是否可以使用XHR对象?

0 个答案:

没有答案