📜  python 请求获取所有 cookie - TypeScript (1)

📅  最后修改于: 2023-12-03 15:34:13.767000             🧑  作者: Mango

Python请求获取所有cookie - TypeScript

当我们使用Python进行网络请求时,经常需要获取响应的cookie信息。获取所有cookie的方法如下所示:

import requests

response = requests.get('https://www.example.com')
cookies = response.cookies

for cookie in cookies:
    print(cookie.name, cookie.value)

以上代码使用requests库发送一个get请求,获取响应中的所有cookie。将返回的cookies对象赋值给变量cookies,并使用for循环逐个输出cookie的name和value属性。

但是需要注意的是,如果请求的网站设置了HttpOnly标志,上述代码将无法获取到这些cookie。此时需要使用其他方法获取。

在TypeScript中,我们可以使用以下示例中的代码来获取所有cookie:

import axios from 'axios';

axios.get('https://www.example.com').then((response) => {
  const cookies = response.headers['set-cookie'];

  if (cookies) {
    for (const cookie of cookies) {
      const [name, value] = cookie.split(';')[0].split('=');
      console.log(name, value);
    }
  }
}).catch((error) => {
  console.log(error);
});

以上代码使用axios库发送一个get请求,获取响应头中的所有cookie。将返回的cookie字符串数组赋值给变量cookies,并使用for循环逐个输出cookie的name和value属性。

值得注意的是,此处使用split函数将cookie字符串以';'作为分隔符分割成数组,并取出数组的第一个元素,即cookie的name和value。否则完整的cookie字符串中可能包含一些我们不需要的信息,如HttpOnly, Secure等标志。

这里的axios库可以替换为其他的http请求库,如request,http等。

以上就是Python和TypeScript请求获取所有cookie的方法。无论是在Python还是TypeScript中,我们都可以轻松获取网站返回的cookie数据。