try {
// Create a URLConnection object for a URL
URL url = new URL("http://hostname:80");
URLConnection conn = url.openConnection();
// Set the cookie value to send
conn.setRequestProperty("Cookie", "name1=value1; name2=value2");
// Send the request to the server
conn.connect();
} catch (MalformedURLException e) {
} catch (IOException e) {
}
try {
// Create a URLConnection object for a URL
URL url = new URL("http://hostname:80");
URLConnection conn = url.openConnection();
// List all the response headers from the server.
// Note: The first call to getHeaderFieldKey() will implicit send
// the HTTP request to the server.
for (int i=0; ; i++) {
String headerName = conn.getHeaderFieldKey(i);
String headerValue = conn.getHeaderField(i);
if (headerName == null && headerValue == null) {
// No more headers
break;
}
if (headerName == null) {
// The header value contains the server's HTTP version
}
}
} catch (Exception e) {
}
Here's a sample of headers from a website:
Key=Value
null=HTTP/1.1 200 OK
Server=Netscape-Enterprise/4.1
Date=Mon, 11 Feb 2002 09:23:26 GMT
Cache-control=public
Content-type=text/html
Etag="9fa67d2a-58-71-3bbdad3283"
Last-modified=Fri, 05 Oct 2001 12:53:06 GMT
Content-length=115
Accept-ranges=bytes
Connection=close
try {
// Create a URLConnection object for a URL
URL url = new URL("http://hostname:80");
URLConnection conn = url.openConnection();
// Get all cookies from the server.
// Note: The first call to getHeaderFieldKey() will implicit send
// the HTTP request to the server.
for (int i=0; ; i++) {
String headerName = conn.getHeaderFieldKey(i);
String headerValue = conn.getHeaderField(i);
if (headerName == null && headerValue == null) {
// No more headers
break;
}
if ("Set-Cookie".equalsIgnoreCase(headerName)) {
// Parse cookie
String[] fields = headerValue.split(";\\s*");
String cookieValue = fields[0];
String expires = null;
String path = null;
String domain = null;
boolean secure = false;
// Parse each field
for (int j=1; j<fields.length; j++) {
if ("secure".equalsIgnoreCase(fields[j])) {
secure = true;
} else if (fields[j].indexOf('=') > 0) {
String[] f = fields[j].split("=");
if ("expires".equalsIgnoreCase(f[0])) {
expires = f[1];
} else if ("domain".equalsIgnoreCase(f[0])) {
domain = f[1];
} else if ("path".equalsIgnoreCase(f[0])) {
path = f[1];
}
}
}
// Save the cookie...
}
}
} catch (MalformedURLException e) {
} catch (IOException e) {
}
Here's a sample of cookies from two websites:
B=a43ka6gu6f4n4&b=2; expires=Thu, 15 Apr 2010 20:00:00 GMT;
path=/; domain=.yahoo.com
PREF=ID=e51:TM=686:LM=86:S=BL-w0; domain=.google.com; path=/;
expires=Sun, 17-Jan-2038 19:14:07 GMT
// Disable automatic redirects for all HTTP requests
HttpURLConnection.setFollowRedirects(false);
// Disable automatic redirects for a particular connection
try {
// Create a URLConnection object for a URL
URL url = new URL("http://hostname:80");
URLConnection conn = url.openConnection();
// Disable automatic redirects just for this connection
HttpURLConnection httpConn = (HttpURLConnection)conn;
httpConn.setInstanceFollowRedirects(false);
// Send the request to the server
conn.connect();
} catch (MalformedURLException e) {
} catch (IOException e) {
}
分享到:
相关推荐
3. **使用`header()`发送Cookie**:构造正确的`Set-Cookie`头部格式,并通过`header()`函数发送到客户端。 #### 代码示例解析 ```php header("Set-Cookie:testcookie=中文;path=/;domain=.phpv.net;expires="....
跨站脚本攻击想必各位都已经是很熟悉了,但是得到COOKIE的时候一直有一个 问题:总是要用WINDOW.OPEN弹一个窗体出来然后发送COOKIE,这样隐秘性 就大打折扣了。以前我想了一个在网页中用insertAdjacentHTM
通过调用这个函数,易语言程序可以向服务器发送Cookie,通常在用户登录或者进行其他需要记录状态的操作时使用。 2. **`InternetGetCookieA` 函数**: 这个函数用于获取指定URL的Cookie。它的参数包括: - `...
服务器通过HttpServletResponse的`addCookie()`方法向客户端发送Cookie,如下所示: ```java Cookie cookie = new Cookie("username", "John Doe"); cookie.setMaxAge(60*60*24*365); // 1年有效期 response.add...
标题中的“cookie_blocker”是一个专门针对Chrome浏览器的扩展程序,设计目的是允许用户轻松地控制他们的浏览器是否发送Cookie。Cookie是网站在用户设备上存储的小型数据文件,用于跟踪用户行为、保存登录信息等。这...
1. **Cookie的创建**:在服务器端,通过HttpServletResponse的addCookie()方法可以向客户端发送Cookie。每个Cookie都包含一个名字、值、过期时间、路径、域等属性。 2. **Cookie的生命周期**:默认情况下,Cookie在...
为了解决这个问题,服务器通过在响应头中设置Set-Cookie字段,向浏览器发送Cookie。浏览器在接收到Cookie后,会在本地存储并将其包含在后续对同一域的请求中,通过Cookie头传递给服务器。这样,服务器就能识别出是...
- **设置Cookie**:服务器通过HTTP响应头中的`Set-Cookie`字段向浏览器发送Cookie。这个字段包含Cookie的名称、值、过期时间、路径、域等信息。 - **读取Cookie**:浏览器在每次发送HTTP请求时,会在请求头的`...
下面是 JSP 中 Cookie 的使用方法,包括向客户端发送 Cookie、从客户端读取 Cookie 和使用 Cookie 记录访问数。 向客户端发送 Cookie 在 JSP 中,向客户端发送 Cookie 需要经过三个步骤:创建 Cookie 对象、设置...
3. 发送Cookie:生成的Cookie会被封装在一个HTTP Set-Cookie响应头中,并发送给客户端(通常是用户的浏览器)。浏览器接收到这个响应后,会存储这个Cookie,并在后续对同一域的请求中自动附带Cookie信息。 4. 用户...
**发送Cookie到客户端**: ```java response.addCookie(cookie); ``` **接收Cookie**: ```java Cookie[] cookies = request.getCookies(); for (Cookie c : cookies) { if ("name".equals(c.getName())) { ...
2. 发送Cookie: ```java response.addCookie(cookie); ``` 3. 读取Cookie: ```java Cookie[] cookies = request.getCookies(); for (Cookie c : cookies) { if (c.getName().equals("name")) { String value = c...
当用户访问网站时,服务器会通过HTTP响应头Set-Cookie向客户端发送Cookie。然后,客户端会在后续请求中通过Cookie请求头将这些信息发送回服务器。这种方式可以有效地帮助服务器识别用户并保持会话状态。 #### 二、...
如果客户端没有发送Cookie,则该方法返回`null`。 ```java Cookie[] cookies = req.getCookies(); ``` ##### 2. 遍历Cookie数组 获取到Cookie数组后,需要遍历这些Cookie,找到需要处理的特定Cookie。 ```java ...
#### 二、创建与发送Cookie 在Java Web应用中,可以通过`javax.servlet.http.Cookie`类来创建Cookie对象,并通过`HttpServletResponse`的`addCookie`方法将Cookie添加到HTTP响应头中,从而发送给客户端浏览器。 ##...
1. 创建Cookie:服务器通过Set-Cookie响应头向浏览器发送Cookie。 2. 读取Cookie:浏览器自动在每个HTTP请求头的Cookie字段中发送所有相关Cookie。 3. 更新Cookie:通过设置相同名称的新Cookie来更新现有Cookie的值...
- **读取 Cookie**:客户端再次发起请求时,浏览器会将相关的 Cookie 发送到服务器。服务器端可以通过 `request.getCookies()` 方法获取所有的 Cookie,然后遍历这些 Cookie 来查找特定的 Cookie。 #### 三、Cookie...
3. **发送Cookie**:当响应被发送到客户端时,添加的Cookie会包含在响应头中。 4. **读取Cookie**:在后续的请求中,`HttpServletRequest`对象提供了`getCookies()`方法,可以获取所有发送回服务器的Cookie。 **JSP...
1. **创建与存储**:当用户首次访问网站时,服务器端可以通过响应头`Set-Cookie`来向客户端发送Cookie。Cookie通常以键值对的形式存储信息,例如用户偏好设置或登录状态等。 2. **传输与读取**:一旦客户端收到了...