2017-04-18 81 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的標準,我需要一個合適的解析器服務器端。