Java 浏览器如何处理cookie?
浏览器如何管理cookies?我的意思是,它必须创建对象吗 动机:我想登录到一个cookie站点。如今,Cookie不仅仅是名称和值,还包含域、过期日期等Java 浏览器如何处理cookie?,java,web-applications,cookies,browser,Java,Web Applications,Cookies,Browser,浏览器如何管理cookies?我的意思是,它必须创建对象吗 动机:我想登录到一个cookie站点。如今,Cookie不仅仅是名称和值,还包含域、过期日期等 我需要Java prospective的答案。每当浏览器收到包含特定cookie头的响应时,它就会创建cookie 使用java servlet API,您可以通过以下方式创建cookie: Cookie cookie = new Cookie(); cookie.setName(); // setValue, setMaxAge, setP
我需要Java prospective的答案。每当浏览器收到包含特定cookie头的响应时,它就会创建cookie 使用java servlet API,您可以通过以下方式创建cookie:
Cookie cookie = new Cookie();
cookie.setName(); // setValue, setMaxAge, setPath, etc.
response.addCookie(cookie);
在后续请求中,浏览器将cookie发送到服务器。同样,使用servlet API,您可以通过调用
request.getCookies()
来获取当前cookies,假设您在服务器上工作,并且在servlet环境中工作(Tomcat、Jetty),然后,您需要查看和响应中的类似cookies集。如果您希望从客户端角度自动浏览网站,而不是手动浏览,我将使用类似的框架,它基于,但更高级别,更易于使用。您不必担心cookies,但如果需要检查cookies,您可以访问cookies
我知道这并不能直接回答你关于浏览器如何处理cookies的问题,但我希望它能有所帮助 如果您想要使用java.net内置API构建具有cookie状态的迷你浏览器,您可以查看本教程:。它展示了Java如何连接到URL,如何通过响应头获取Cookie,以及如何在请求中设置Cookie 一些示例代码:
System.out.println("GET: " + url);
// create and open url connection for reading
URL urlObj = new URL(url);
URLConnection conn = urlObj.openConnection();
// set existing cookies
conn.setRequestProperty("Cookie", myGetSavedCookies(url));
// connect
conn.connect();
// loop through response headers to set new cookies
myAddSavedCookies(conn.getHeaderFields().get("Set-Cookie"));
// read page
Scanner sc = new Scanner(conn.getInputStream());
while (sc.hasNextLine())
out.write(sc.nextLine());
sc.close();
不,服务器创建cookie对象,浏览器将其粘贴到cookie jar中。我根据教程进行了尝试,但它不起作用。但我对requestproperty的第一个参数只是“cookie”感到困惑。他们试图用这个字符串说什么。它只是一个字符串还是cookie名称还是什么???它是一个常量键,指示第二个参数是什么。通过使用“;”分隔键=值对,可以指定多个cookie。有关此方法的参考,请参阅。