2016-09-02 6 views
0

server.User上のファイルを更新したいと思います。データを入力してファイルの内容を更新するリクエストをサーバーに送信できます。 。

angularJS code 


$http.put("app/rest/updateMsg",fileContent) 

Spring controller code 

      @RequestMapping(value = "/updateMsg", method = RequestMethod.PUT) 
    public ResponseEntity<Boolean> updateMsg(@RequestBody String fileContent){ 

     //update file code 

    } 

この問題の回避方法が見つかりました。空の場合( "")、明示的にfilecontentを ""に設定します。

他の解決方法はありますか?

+0

レストコンベンションによれば、PUTのリクエストボディは常に存在する必要があります – nikjohn

+4

[本文を含めるにはHTTP PUTリクエストが必要ですか?](http://stackoverflow.com/questions/1233372/) http-put-request-to-include-a-bodyである) – nikjohn

答えて

0

実際に空のボディを送信したいクライアントを設計していた場合は、Content-Length:0を渡します。実際、POSTメソッドとPUTメソッドの定義(RFC 2616 9.5,9.6 )身体が必要と暗示されていると主張するかもしれないが、身体を扱わない合理的な方法は、長さゼロの身体を仮定することであろう。

意味的には、PUTリクエストはボディが空であっても必要です。 here

関連する問題