2017-07-17 5 views
0

ファイルをHttpUrlConnectionメソッドで送信しようとしています。
サーバー側でHttpUrlConnectionをどのように処理しますか?

URL url = new URL(SERVER_URL); 
       connection = (HttpURLConnection) url.openConnection(); 
       connection.setDoInput(true);//Allow Inputs 
       connection.setDoOutput(true);//Allow Outputs 
       connection.setUseCaches(false);//Don't use a cached Copy 
       connection.setRequestMethod("POST"); 
       connection.setRequestProperty("Connection", "Keep-Alive"); 
       connection.setRequestProperty("ENCTYPE", "multipart/form-data"); 
       connection.setRequestProperty("Content-Type", "multipart/form-data;boundary=" + boundary); 
       connection.setRequestProperty("uploaded_file",selectedFilePath); 

ファイルをdataOutputStreamで送信します。

dataOutputStream.writeBytes(lineEnd); 
       dataOutputStream.writeBytes(twoHyphens + boundary + twoHyphens + lineEnd); 

しかし、サーバ側でこのHttlUrlConnectionとのFileOutputStreamを処理する方法がわかりません。

私は正しいことをしているとは確信していませんが、 単純なRequestMappingで入力ストリームを取得しようとしています。これは私のサーバー側です。

@RequestMapping(value="/fileUploadPage") 
    public String fileUpload(@Validated FileModel file, BindingResult result, ModelMap model,HttpServletRequest req) throws IOException { 

     How to handle 'httpUrlconnection outputstream' in here? 


} 
+0

「ENCTYPE」ヘッダーはありません。 – SLaks

+0

あなたはどの言語を使ってサーバー側を開発していますか? PHPであなたは$ _FILEでマルチパートデータにアクセスすることができます – Mohsen

+0

@Requestmappingでファイルoutputstreamを処理することは可能でしょうか?クライアント側の –

答えて

0

あなたの質問のコードスニペットは、あなたが春を使用していることを示しています。 Springはマルチパートファイルのアップロードをサポートしていますので、documentationを確認してください。 MultipartResolverを設定した後、次の操作を実行できます。

@PostMapping("/form") 
public String handleFormUpload(@RequestParam("name") String name, 
     @RequestParam("file") MultipartFile file) { 

    if (!file.isEmpty()) { 
     byte[] bytes = file.getBytes(); 
     // store the bytes somewhere 
     return "redirect:uploadSuccess"; 
    } 

    return "redirect:uploadFailure"; 
} 
+0

。私はDataOutputStreamを使用しています。サーバーは入力ストリームを使用する必要はありませんでしたか? –

+0

Springはそれを行い、 'MultipartFile'を使用できるようにします。したがって、より低いレベルの詳細を処理する必要はありません。 –

+0

ネイティブAndroidからDataoutputStreamを送信しています。私はまだ画像やファイルを送信するためにアンドロイドでdataoutputStreamを使用すると思いますか? –

関連する問題