【问题标题】:Java 9 HttpClient still in incubation?Java 9 HttpClient 仍在孵化中?
【发布时间】:2018-03-09 02:23:02
【问题描述】:

HttpClient 的 Javadoc 中看到 -

孵化功能。将在未来的版本中删除。

而且它似乎不支持application/x-www-form-urlencodedmultipart/form-data POST。看这篇文章:

Java 9 HttpClient send a multipart/form-data request

【问题讨论】:

  • @nullpointer ,你能举个例子,用 Java 9 HttpClient 发布一个 HTML 表单,如 application/x-www-form-urlencodedmultipart/form-data 吗?
  • @nullpointer 不是结论。只是似乎。
  • 清除我所有的个人意见,但不要在这里搞砸。但我投票决定关闭它,除非这有一些附加的研究作为离题。

标签: java post multipartform-data java-9 java-http-client


【解决方案1】:

HTTP/2 客户端 (JEP 110) 仍在为 JDK 9 孵化。请参阅JDK-8170648

标准化 API 将推迟到未来的版本。 API 将作为孵化功能包含在 JDK 9 中(请参阅孵化器模块 JDK-8169768)。

在这个comment of JDK-8042950 中,您可以找到推迟它的一些原因。

关于内容类型支持:您可以设置您喜欢的任何 MIME 类型,但似乎没有任何编码器可以生成特定的正文格式。换句话说,可以使用application/x-www-form-urlencodedmultipart/form-data,但是您必须自己以正确的格式对正文进行编码,方法是在链接的答案中实现BodyProcessor

未来他们可能会更多地添加车身处理器(尽管提案页面上说 API 应该保持非常小)但现在我可能只是切换到功能更丰富的客户端或采用来自现有库的正文编码器,使其与 HTTP/2 客户端一起使用。

【讨论】:

  • 你能支持这个事实吗它似乎不支持 application/x-www-form-urlencoded 或 multipart/form-data POST
猜你喜欢
  • 1970-01-01
  • 2019-01-29
  • 2018-05-08
  • 2017-10-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-23
相关资源
最近更新 更多