WARN (org.apache.commons.httpclient.HttpMethodBase:1511) - Cookie rejected 警告

来源:互联网 发布:知乎怎么私信匿名用户 编辑:程序博客网 时间:2024/06/05 04:02

参考链接:http://stackoverflow.com/questions/7459279/httpclient-warning-cookie-rejected-illegal-domain-attribute

今天在调接口的时候 HttpClient 给出了这样的警告:

WARN (org.apache.commons.httpclient.HttpMethodBase:1511) - Cookie rejected: "$Version=0; JSESSIONID=B2C541057FFEFC0DF476C6EBA96C2926; $Path=/security". Illegal path attribute "/security". Path of origin: "/gateway.do"

google ,在 stackoverflow 上找到了链接:http://stackoverflow.com/questions/7459279/httpclient-warning-cookie-rejected-illegal-domain-attribute,看了原文明白了是什么意思。
我用 HttpClient 访问的接口的地址是:https://xxx.com/gateway.do,不合法的 path 属性“/security“,origin 的 path 是 ”/gateway.do“。https://xxx.com/gateway.do URL 的 path 是 /gateway.do 而 https://xxx.com/gateway.do 返回给我的请求中要求设置 path 为 /security 这是不允许的。合法的设置是 / 或者是 /gateway.do 而不能是其他的 path 。所以 HttpClient 给我们打印出了一个警告,这个其实不是我们能控制的,是我们想要访问的那个网站(比如 https://xxx.com/gateway.do)要求我们设置这样一个 path 的,而这是不合法的,所以 HttpClient 给我们打印出一个警告。

同样是走 http 协议调接口,可以用 HttpClient 当然也可以用浏览器来调用,下面就是我用浏览器调用接口的情况:

这里写图片描述

这样一看就很清楚了,是我们想要访问的网站要求设置一个 path ,但这个 path 是不合法的,所以 HttpClient 给了我们一个警告,对于这个警告,其实我们是无能为力的。只能是目标网站那边去改,比如不设置 cookie 或者是设置成这样的 cookie:Set-Cookie:JSESSIONID=09E45C974E9AE08B908DC852AD3C9050; Path=/gateway.do 或者是 cookie:Set-Cookie:JSESSIONID=09E45C974E9AE08B908DC852AD3C9050; Path=/

0 0
原创粉丝点击