无法发送空字符串$ http.put

时间:2016-09-02 09:45:19

标签: angularjs spring

我想在服务器上更新文件。用户可以输入数据并向服务器发送请求以更新文件内容。对于非空字符串,代码可以工作,但是当用户输入空字符串时,我会得到异常。

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设置为&#34; &#34;当它是空的时候(&#34;&#34;)。

还有其他解决办法吗?

1 个答案:

答案 0 :(得分:0)

  

如果我正在设计一个真正想要发送空体的客户端,我会传递Content-Length:0。实际上,根据一个人对POST和PUT方法定义(RFC 2616 9.5,9.6)的读取,可能会认为身体被暗示是必需的 - 但是处理没有身体的合理方式是假设一个零长度的身体。

从语义上讲,PUT请求应该有主体,即使它们是空的。摘录自here