java - HttpURLConnection 类的 setDoOutput 和 setDoInput 方法有什么用

标签 java android

我正在使用以下代码行调用 POST 网络服务。

我不清楚 connection.setDoOutput( true );connection.setDoInput( true );

能否详细说明这段代码的用途?

我能否将相同的代码与 GET 一起使用?

URL url = new URL( "http://xxxxxx.com" );
HttpURLConnection connection = ( HttpURLConnection ) url.openConnection();
connection.setRequestMethod( "POST" );
connection.setDoOutput( true );
connection.setDoInput( true );
connection.setUseCaches( false );

最佳答案

setDoOutput(true) 与 POST 一起使用以允许通过连接发送正文:

OutputStream os = connection.getOutputStream();
os.write(body);
os.flush();
os.close();

setDoInput(true) 用于获取响应,默认为 true

当使用不同的方法时,例如GET,您没有任何内容可传递给连接,因此不需要 OutputStream

关于java - HttpURLConnection 类的 setDoOutput 和 setDoInput 方法有什么用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29558759/

相关文章:

java - 更新父对象时删除特定子对象

java - Talend:将两个条件子作业的数据合并到单个文件中

java - "Out-of-the-box"maven项目

android - Ionic Framework Android 构建中的@font-face 加载问题

android - 是否可以在不添加播放服务广告依赖的情况下获取 android 广告 ID?

java - 使用 Webview.findAll()

java - 如何获取向导页面中的所有字段?

java - JAXB 更新 XML 元素

android - 在 Android 中,如果操作系统终止了我的应用程序,getIntent() 会返回具有相同附加功能的 Intent 吗?

android - 以编程方式定位 View stub