相关疑难解决方法(0)

带请求正文的HTTP GET

我正在为我们的应用程序开发一个新的RESTful Web服务.

在某些实体上执行GET时,客户端可以请求实体的内容.如果他们想要添加一些参数(例如排序列表),他们可以在查询字符串中添加这些参数.

或者,我希望人们能够在请求正文中指定这些参数. HTTP/1.1似乎没有明确禁止这一点.这将允许他们指定更多信息,可以更容易指定复杂的XML请求.

我的问题:

  • 这完全是一个好主意吗?
  • HTTP客户端在GET请求中使用请求主体会有问题吗?

http://tools.ietf.org/html/rfc2616

rest http http-get

1896
推荐指数
19
解决办法
98万
查看次数

http获取带有正文的请求

我知道你不应该发送带有正文的 HTTP GET 请求,但是 ceilometer web api 强迫我这样做。我正在开发一个 ceilometer scala 客户端,所以我需要一种 scala/java 方式来发出带有主体的 get 请求。到目前为止,我尝试使用 beeClient ( http://www.bigbeeconsultants.co.uk ) 和使用 httpConnection 的纯 Java,但出现 404 错误。在 curl 我可以通过这种方式实现结果:

curl -X GET -H "X-Auth-Token: ..long long token here.." 
-H "Content-Type: application/json" 
-d '{"q": [{"field": "resource", "op": "eq", "value": "gdfsf"}]}'
http://137.204.57.150:8777/v2/meters/
Run Code Online (Sandbox Code Playgroud)

那是我使用 java HttpURLConnection 的 Scala 代码:

import java.io._
import java.net._
val token = "myToken"
val url = new URL("http://137.204.57.150:8777/v2/meters/")
val body = "{\"q\": [{\"field\": \"resource\", \"op\": \"eq\", \"value\": \"gdfsf\"}]}"
val bodyLenght = …
Run Code Online (Sandbox Code Playgroud)

java scala get http

3
推荐指数
2
解决办法
1万
查看次数

标签 统计

http ×2

get ×1

http-get ×1

java ×1

rest ×1

scala ×1