我需要执行一个HTTP GET请求来调用REST服务,并在
GET
中包含一个body。不幸的是,在连接上设置#setDoOutput(true)
会强制使用POST
。有没有办法发送带有body的GET
请求?
编辑:我要发送的body是JSON格式的。GET
中包含一个body。不幸的是,在连接上设置#setDoOutput(true)
会强制使用POST
。有没有办法发送带有body的GET
请求?
编辑:我要发送的body是JSON格式的。使用HttpURLConnection
发送HTTP GET请求时无法发送任何内容。通过在HttpURLConnection
上设置setDoOutput(true)
,可以强制将动词更改为POST。
我使用的REST API文档描述了一个具有JSON主体的端点,但是也接受URL参数。
通过HttpUrlConnection可能不太可能实现,尽管您可能能够通过其他API来实现。但是,如果您必须以这种方式进行操作,则您的架构中存在问题的可能性很高,因为它违反了GET Http方法的基本用法,并且可能会出现不同的问题,例如:
请查看此问题以获取更多信息。
希望这可以帮助您。
祝好!
HttpUrlConnection
似乎不可能。 - dm78