2017-04-18 68 views
0

我创建了以下服务于Angular2文件上传到服务器:角2图像上传腐败

import { Component } from '@angular/core'; 
import { Http, Response, Headers, RequestOptionsArgs } from '@angular/http' 
import { Injectable } from '@angular/core'; 
import { Observable } from 'rxjs'; 
import 'rxjs/add/operator/map'; 

@Injectable() 
export class UploadService { 
    constructor(private http: Http) { 
    } 

    public upload(url: string, file: File, type: string): Observable<Response>{ 
     let formData: FormData = new FormData() 
     formData.append("uploadFile", file); 
     let headers = new Headers(); 
     headers.append('Content-Type', type); 
     let opts:RequestOptionsArgs = { headers: headers }; 
     return this.http.put(url, formData, opts) 
    } 
} 

它工作正常的大多数数据类型,但我有一个奇怪的问题,在对图像它增加下面的头部插入文件顶部:

------ WebKitFormBoundaryUmPd3GQyQ1XQfCFv Content-Disposition:form-data;命名=一个 “UploadFile”; filename =“Picture_Lotus-01.jpg” Content-Type:image/jpeg

除此之外,所有数据都已正确上传;即如果我然后下载文件并删除图像可读的标题行。我已经用Postman测试了上传,它工作正常,因此我相信这是我在我的angular2上传中配置标题信息的方式。 帮助!!现在我一直对我的头撞了这一整天!

回答

0

这是multipart/form-data的标准,我需要一个合适的解析器服务器端。