自动化工具 请教一个发送 https 请求的问题 org.apache.httpcomponents.httpclient

bOneKop · 2018年08月31日 · 最后由 bOneKop 回复于 2018年09月03日 · 2463 次阅读

如题,发送请求之后,
代码接收到 response 是:status=411, reason=Length Required,
但是这个 header 的参数不是在 jar 包里面自动计算加进去的吗?
我如果自己添加还会报错。
有人知道这个怎么解决吗,
感谢

共收到 8 条回复 时间 点赞

有人知道吗

bOneKop 回复

HTTP POST 的方法向 Web 服务器请求时,没有提供相应的 BODY 数据。

blackcoffee 回复

Response response = requestBuilder
.post(Entity.entity(requestJson, MediaType.APPLICATION_FORM_URLENCODED));
这个是我发请求的代码,debug 过去 requestJson 是有值的,格式是 APPLICATION_FORM_URLENCODED

bOneKop 回复

你抓个包,看看这个 http post 有没有请求体就知道了。看服务器返回的,就是没有 body.

bOneKop 回复

还有这一行:Entity.entity(requestJson, MediaType.APPLICATION_FORM_URLENCODED)

你传的是 JSON 格式的,为什么 content-type 是表单类型的:MediaType.APPLICATION_FORM_URLENCODED ?
肯定不对啊

blackcoffee 回复

好的,我会去抓包看看,
那个只是命名没有改,传的内容是
username=admin&password=1111&valPath=&valCode=
这样的格式,我之前也没有传过表单类型的数据,不知道这样对不对

get or post?

走走岁月 回复

POST,请求,现在发现发 http 可以,https 不行。
这两个我是通过不同的 ClientBuilder 来进行初始化

bOneKop 关闭了讨论 09月03日 20:23
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册