2016-07-22 10 views
0

express-http-proxyのマルチパートファイルリクエストをJava Springバックエンドにプロキシしようとしていますが、何らかの理由でSpringが受け取るファイルバイト配列がアップロードされたファイルと異なります。たとえば、バイト配列の長さが3000のファイルは、約6000に変換されます。なぜ起こっているのでしょうか?あなたは同様の問題を見たことがありますか?自己にマルチパートリクエストをプロキシするとファイルバイト配列データが変更される

var proxy = require('express-http-proxy'); 
    var apiProxy = proxy('http://localhost:8080', { 
     forwardPath: function (req, res) { 
      return '/api/v2/photos/upload'; 
     } 
    }); 

    app.all("/api/upload", apiProxy); 

答えて

0

注:

デフォルトexpress-http-proxyによって、UTF-8としてリクエストボディをコード

これは、リクエストをプロキシスニペットです。問題は、要求本体が再エンコードされたため、データが変更されたことでした。 nullreqBodyEncodingを設定すると、リクエストボディがそのまま残されていることを保証します:

var apiProxy = proxy('http://localhost:8080', { 
     reqBodyEncoding: null, 
     forwardPath: function (req, res) { 
      return '/api/v2/photos/upload'; 
     } 
    }); 
関連する問題