2017-04-18 8 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 コンテンツの処理:フォームデータ。 name = "uploadFile";ファイル名= "Picture_Lotus-01.jpg" コンテンツタイプ:image/jpeg

それ以外のデータはすべて正しくアップロードされています。つまり、ファイルをダウンロードしてそのヘッダ行を削除すれば、画像は判読できます。私は郵便配達でアップロードをテストしたのでうまくいきます。したがって、私はそれが私のangular2アップロードでヘッダー情報を構成していると信じています。 ヘルプ!私は一日中これに対して頭を叩いている!

答えて

0

これはmultipart/form-dataの標準であり、適切なパーサーサーバー側が必要でした。

関連する問題