# 目录 [TOC] Http POST类型的请求,允许发送body到服务器,这也意味着我们可以push任意数据到服务器,NoHttp提供了一下几种方式供开发者选择使用。 ## 提交/上传json NoHttp提供了两种方式,开发者只需要传入json格式的数据即可,NoHttp会自动修改`ContentType`为`application/json`。 ```java request.setDefineRequestBodyForJson(JsonString); // 传入json格式的字符串即可。 request.setDefineRequestBodyForJson(JSONObject); // 传入JSONObject即可。 ``` ## 提交/上传xml 开发者只需要传入相应格式的数据即可,NoHttp会自动修改`ContentType`为`application/xml`。 ```java request.setDefineRequestBodyForXML(XmlString); // 提交xml字符串 ``` ## 提交/上传String 这里因为是自定义格式的数据,需要开发者自行指定body的`ContentType`。 ```java request.setDefineRequestBody(String requestBody, String contentType); ``` ## 提交文件、InputStream等自定义数据 同样的,这里可以传一个`InputStream`进去,因为`Stream`也属于自定义数据,所以必须传一个`ContentType`。 ```java request.setDefineRequestBody(InputStream, ContentType) ``` 如果你们是直接push一个文件上去: ```java request.setDefineRequestBody(new FileInputStream(file), "application/octet-stream") ```