-
下载官方最新的Salt的rpm包
2018-06-22 19:58:00要在无发访问互联网的环境下安装salt; 解决思路 模拟一个项目环境A,A可以访问外网; 在A中下载离线安装salt所需的RPM包,将这些包传入项目环境,从而在项目环境中离线安装salt-master; 试验环境 Docker Image...问题描述
- 项目环境无法访问互联网;
- 要在无发访问互联网的环境下安装salt;
解决思路
- 模拟一个项目环境A,A可以访问外网;
- 在A中下载离线安装salt所需的RPM包,将这些包传入项目环境,从而在项目环境中离线安装salt-master;
试验环境
- Docker Image -> centos:6.8
- Python -> 2.6/2.7
第1部分 - 创建模拟环境
- 由于项目环境是centos6.8,所以模拟环境也是centos6.8;
- 模拟环境用Docker跑一个官方centos:6.8镜像实现,快速轻量;
PS C:\Users\LiXinlei> docker pull centos:6.8 6.8: Pulling from library/centos Digest: sha256:147bb07a3a271ae84d53fbf7f619b00929c332845e389b7423f15d618236acd1 Status: Image is up to date for centos:6.8 PS C:\Users\LiXinlei> docker run -itd -v d:/volume/orange:/data 6704d778b3ba PS C:\Users\LiXinlei> docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 197e2218632c 6704d778b3ba "/bin/bash" 23 minutes ago Up 23 minutes optimistic_nobel PS C:\Users\LiXinlei> docker exec -it 197e2218632c /bin/bash [root@197e2218632c /]#
第2部分 - 下载rpm包
2.1 安装SaltStack的Repository
- 该Repository由Salt官方提供;
- 相较于和CentOS版本号对应的epel仓库,官方仓库能提供最新的Salt版本;
[root@197e2218632c data]# yum install https://repo.saltstack.com/yum/redhat/salt-repo-latest-2.el6.noarch.rpm Loaded plugins: fastestmirror, ovl Setting up Install Process salt-repo-latest-2.el6.noarch.rpm | 4.2 kB 00:00 Examining /var/tmp/yum-root-85W5__/salt-repo-latest-2.el6.noarch.rpm: salt-repo-latest-2.el6.noarch Marking /var/tmp/yum-root-85W5__/salt-repo-latest-2.el6.noarch.rpm to be installed Loading mirror speeds from cached hostfile * base: mirrors.huaweicloud.com * extras: mirrors.huaweicloud.com * updates: mirrors.huaweicloud.com Resolving Dependencies --> Running transaction check ---> Package salt-repo.noarch 0:latest-2.el6 will be installed --> Finished Dependency Resolution Dependencies Resolved =================================================================================================================================================================================================================== Package Arch Version Repository Size =================================================================================================================================================================================================================== Installing: salt-repo noarch latest-2.el6 /salt-repo-latest-2.el6.noarch 1.9 k Transaction Summary =================================================================================================================================================================================================================== Install 1 Package(s) Total size: 1.9 k Installed size: 1.9 k Is this ok [y/N]: y Downloading Packages: Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Installing : salt-repo-latest-2.el6.noarch 1/1 Verifying : salt-repo-latest-2.el6.noarch 1/1 Installed: salt-repo.noarch 0:latest-2.el6 Complete!
2.2 刷新yum缓存
[root@197e2218632c data]# yum clean expire-cache Loaded plugins: fastestmirror, ovl Cleaning repos: base extras salt-latest updates 6 metadata files removed
2.3 下载rpm包
- 把rpm包下载到volume中,使得宿主机(Windows10笔记本)可以直接访问,从而方便下载的rpm包从宿主机到项目环境的传输;
- 下载功能由yum提供,yum可以做到只下载不安装;
- 由yum提供的下载,可以做到所需的rpm包一个不落;
[root@197e2218632c data]# mkdir /data/salt-master [root@197e2218632c data]# cd salt-master/ [root@197e2218632c salt-master]# yum -y install --downloadonly --downloaddir=/data/salt-master/ salt-master Loaded plugins: fastestmirror, ovl Setting up Install Process Loading mirror speeds from cached hostfile * base: mirrors.huaweicloud.com * extras: mirrors.huaweicloud.com * updates: mirrors.huaweicloud.com base | 3.7 kB 00:00 extras | 3.4 kB 00:00 salt-latest | 2.9 kB 00:00 salt-latest/primary_db | 57 kB 00:01 updates | 3.4 kB 00:00 Resolving Dependencies --> Running transaction check ---> Package salt-master.noarch 0:2018.3.1-1.el6 will be installed --> Processing Dependency: salt = 2018.3.1-1.el6 for package: salt-master-2018.3.1-1.el6.noarch --> Processing Dependency: /usr/bin/python2.7 for package: salt-master-2018.3.1-1.el6.noarch --> Running transaction check ---> Package python27.x86_64 0:2.7.13-3.ius.el6 will be installed --> Processing Dependency: python27-libs(x86-64) = 2.7.13-3.ius.el6 for package: python27-2.7.13-3.ius.el6.x86_64 --> Processing Dependency: libpython2.7.so.1.0()(64bit) for package: python27-2.7.13-3.ius.el6.x86_64 ---> Package salt.noarch 0:2018.3.1-1.el6 will be installed --> Processing Dependency: python27-tornado < 5.0 for package: salt-2018.3.1-1.el6.noarch --> Processing Dependency: python27-tornado >= 4.2.1 for package: salt-2018.3.1-1.el6.noarch --> Processing Dependency: python27-requests >= 1.0.0 for package: salt-2018.3.1-1.el6.noarch --> Processing Dependency: python27-msgpack >= 0.4 for package: salt-2018.3.1-1.el6.noarch --> Processing Dependency: python27-futures >= 2.0 for package: salt-2018.3.1-1.el6.noarch --> Processing Dependency: python27-crypto >= 2.6.1 for package: salt-2018.3.1-1.el6.noarch --> Processing Dependency: yum-utils for package: salt-2018.3.1-1.el6.noarch --> Processing Dependency: python27-zmq for package: salt-2018.3.1-1.el6.noarch --> Processing Dependency: python27-six for package: salt-2018.3.1-1.el6.noarch --> Processing Dependency: python27-psutil for package: salt-2018.3.1-1.el6.noarch --> Processing Dependency: python27-markupsafe for package: salt-2018.3.1-1.el6.noarch --> Processing Dependency: python27-jinja2 for package: salt-2018.3.1-1.el6.noarch --> Processing Dependency: pciutils for package: salt-2018.3.1-1.el6.noarch --> Processing Dependency: PyYAML27 for package: salt-2018.3.1-1.el6.noarch --> Running transaction check ---> Package PyYAML27.x86_64 0:3.11-3.el6 will be installed --> Processing Dependency: libyaml-0.so.2()(64bit) for package: PyYAML27-3.11-3.el6.x86_64 ---> Package pciutils.x86_64 0:3.1.10-4.el6 will be installed --> Processing Dependency: pciutils-libs = 3.1.10-4.el6 for package: pciutils-3.1.10-4.el6.x86_64 --> Processing Dependency: libpci.so.3(LIBPCI_3.1)(64bit) for package: pciutils-3.1.10-4.el6.x86_64 --> Processing Dependency: libpci.so.3(LIBPCI_3.0)(64bit) for package: pciutils-3.1.10-4.el6.x86_64 --> Processing Dependency: libpci.so.3()(64bit) for package: pciutils-3.1.10-4.el6.x86_64 ---> Package python27-crypto.x86_64 0:2.6.1-5.el6 will be installed ---> Package python27-futures.noarch 0:3.0.3-3.el6 will be installed ---> Package python27-jinja2.noarch 0:2.8.1-3.el6 will be installed --> Processing Dependency: python27-babel >= 0.8 for package: python27-jinja2-2.8.1-3.el6.noarch ---> Package python27-libs.x86_64 0:2.7.13-3.ius.el6 will be installed ---> Package python27-markupsafe.x86_64 0:0.11-12.el6 will be installed ---> Package python27-msgpack.x86_64 0:0.4.6-3.el6 will be installed ---> Package python27-psutil.x86_64 0:5.4.2-1.ius.el6 will be installed ---> Package python27-requests.noarch 0:2.7.0-9.el6 will be installed --> Processing Dependency: python27-urllib3 >= 1.10.4 for package: python27-requests-2.7.0-9.el6.noarch --> Processing Dependency: python27-chardet >= 2.2.1-1 for package: python27-requests-2.7.0-9.el6.noarch ---> Package python27-six.noarch 0:1.9.0-4.el6 will be installed ---> Package python27-tornado.x86_64 0:4.2.1-4.el6 will be installed --> Processing Dependency: python27-pycurl for package: python27-tornado-4.2.1-4.el6.x86_64 ---> Package python27-zmq.x86_64 0:14.5.0-4.el6 will be installed --> Processing Dependency: libzmq.so.4()(64bit) for package: python27-zmq-14.5.0-4.el6.x86_64 ---> Package yum-utils.noarch 0:1.1.30-40.el6 will be installed --> Processing Dependency: yum >= 3.2.29-77 for package: yum-utils-1.1.30-40.el6.noarch --> Processing Dependency: libxml2-python for package: yum-utils-1.1.30-40.el6.noarch --> Running transaction check ---> Package libxml2-python.x86_64 0:2.7.6-21.el6_8.1 will be installed --> Processing Dependency: libxml2 = 2.7.6-21.el6_8.1 for package: libxml2-python-2.7.6-21.el6_8.1.x86_64 ---> Package libyaml.x86_64 0:0.1.3-4.el6_6 will be installed ---> Package pciutils-libs.x86_64 0:3.1.10-4.el6 will be installed ---> Package python27-babel.noarch 0:0.9.4-5.3.el6 will be installed ---> Package python27-chardet.noarch 0:2.2.1-4.el6 will be installed ---> Package python27-pycurl.x86_64 0:7.19.0-11.el6 will be installed ---> Package python27-urllib3.noarch 0:1.10.4-8.el6 will be installed ---> Package yum.noarch 0:3.2.29-73.el6.centos will be updated ---> Package yum.noarch 0:3.2.29-81.el6.centos will be an update ---> Package zeromq.x86_64 0:4.0.5-4.el6 will be installed --> Running transaction check ---> Package libxml2.x86_64 0:2.7.6-21.el6 will be updated ---> Package libxml2.x86_64 0:2.7.6-21.el6_8.1 will be an update --> Finished Dependency Resolution Dependencies Resolved =================================================================================================================================================================================================================== Package Arch Version Repository Size =================================================================================================================================================================================================================== Installing: salt-master noarch 2018.3.1-1.el6 salt-latest 2.3 M Installing for dependencies: PyYAML27 x86_64 3.11-3.el6 salt-latest 152 k libxml2-python x86_64 2.7.6-21.el6_8.1 base 325 k libyaml x86_64 0.1.3-4.el6_6 base 52 k pciutils x86_64 3.1.10-4.el6 base 85 k pciutils-libs x86_64 3.1.10-4.el6 base 34 k python27 x86_64 2.7.13-3.ius.el6 salt-latest 82 k python27-babel noarch 0.9.4-5.3.el6 salt-latest 1.4 M python27-chardet noarch 2.2.1-4.el6 salt-latest 230 k python27-crypto x86_64 2.6.1-5.el6 salt-latest 501 k python27-futures noarch 3.0.3-3.el6 salt-latest 27 k python27-jinja2 noarch 2.8.1-3.el6 salt-latest 284 k python27-libs x86_64 2.7.13-3.ius.el6 salt-latest 5.6 M python27-markupsafe x86_64 0.11-12.el6 salt-latest 24 k python27-msgpack x86_64 0.4.6-3.el6 salt-latest 69 k python27-psutil x86_64 5.4.2-1.ius.el6 salt-latest 383 k python27-pycurl x86_64 7.19.0-11.el6 salt-latest 76 k python27-requests noarch 2.7.0-9.el6 salt-latest 98 k python27-six noarch 1.9.0-4.el6 salt-latest 28 k python27-tornado x86_64 4.2.1-4.el6 salt-latest 660 k python27-urllib3 noarch 1.10.4-8.el6 salt-latest 107 k python27-zmq x86_64 14.5.0-4.el6 salt-latest 478 k salt noarch 2018.3.1-1.el6 salt-latest 9.1 M yum-utils noarch 1.1.30-40.el6 base 113 k zeromq x86_64 4.0.5-4.el6 salt-latest 568 k Updating for dependencies: libxml2 x86_64 2.7.6-21.el6_8.1 base 805 k yum noarch 3.2.29-81.el6.centos base 1.0 M Transaction Summary =================================================================================================================================================================================================================== Install 25 Package(s) Upgrade 2 Package(s) Total download size: 24 M Downloading Packages: (1/27): PyYAML27-3.11-3.el6.x86_64.rpm | 152 kB 00:04 (2/27): libxml2-2.7.6-21.el6_8.1.x86_64.rpm | 805 kB 00:01 (3/27): libxml2-python-2.7.6-21.el6_8.1.x86_64.rpm | 325 kB 00:01 (4/27): libyaml-0.1.3-4.el6_6.x86_64.rpm | 52 kB 00:00 (5/27): pciutils-3.1.10-4.el6.x86_64.rpm | 85 kB 00:00 (6/27): pciutils-libs-3.1.10-4.el6.x86_64.rpm | 34 kB 00:00 (7/27): python27-2.7.13-3.ius.el6.x86_64.rpm | 82 kB 00:02 (8/27): python27-babel-0.9.4-5.3.el6.noarch.rpm | 1.4 MB 00:17 (9/27): python27-chardet-2.2.1-4.el6.noarch.rpm | 230 kB 00:02 (10/27): python27-crypto-2.6.1-5.el6.x86_64.rpm | 501 kB 00:10 (11/27): python27-futures-3.0.3-3.el6.noarch.rpm | 27 kB 00:00 (12/27): python27-jinja2-2.8.1-3.el6.noarch.rpm | 284 kB 00:03 (13/27): python27-libs-2.7.13-3.ius.el6.x86_64.rpm | 5.6 MB 00:27 (14/27): python27-markupsafe-0.11-12.el6.x86_64.rpm | 24 kB 00:00 (15/27): python27-msgpack-0.4.6-3.el6.x86_64.rpm | 69 kB 00:00 (16/27): python27-psutil-5.4.2-1.ius.el6.x86_64.rpm | 383 kB 00:01 (17/27): python27-pycurl-7.19.0-11.el6.x86_64.rpm | 76 kB 00:00 (18/27): python27-requests-2.7.0-9.el6.noarch.rpm | 98 kB 00:00 (19/27): python27-six-1.9.0-4.el6.noarch.rpm | 28 kB 00:00 (20/27): python27-tornado-4.2.1-4.el6.x86_64.rpm | 660 kB 00:01 (21/27): python27-urllib3-1.10.4-8.el6.noarch.rpm | 107 kB 00:00 (22/27): python27-zmq-14.5.0-4.el6.x86_64.rpm | 478 kB 00:02 (23/27): salt-2018.3.1-1.el6.noarch.rpm | 9.1 MB 00:49 (24/27): salt-master-2018.3.1-1.el6.noarch.rpm | 2.3 MB 00:08 (25/27): yum-3.2.29-81.el6.centos.noarch.rpm | 1.0 MB 00:01 (26/27): yum-utils-1.1.30-40.el6.noarch.rpm | 113 kB 00:00 (27/27): zeromq-4.0.5-4.el6.x86_64.rpm | 568 kB 00:03 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 156 kB/s | 24 MB 02:40 exiting because --downloadonly specified [root@197e2218632c salt-master]# ll total 25084 -rwxr-xr-x 1 root root 155976 Jun 15 17:54 PyYAML27-3.11-3.el6.x86_64.rpm -rwxr-xr-x 1 root root 824428 Jun 23 2016 libxml2-2.7.6-21.el6_8.1.x86_64.rpm -rwxr-xr-x 1 root root 332300 Jun 23 2016 libxml2-python-2.7.6-21.el6_8.1.x86_64.rpm -rwxr-xr-x 1 root root 53232 Jan 28 2015 libyaml-0.1.3-4.el6_6.x86_64.rpm -rwxr-xr-x 1 root root 87232 Aug 5 2014 pciutils-3.1.10-4.el6.x86_64.rpm -rwxr-xr-x 1 root root 34736 Aug 5 2014 pciutils-libs-3.1.10-4.el6.x86_64.rpm -rwxr-xr-x 1 root root 83548 Jun 15 17:54 python27-2.7.13-3.ius.el6.x86_64.rpm -rwxr-xr-x 1 root root 1493924 Jun 15 17:54 python27-babel-0.9.4-5.3.el6.noarch.rpm -rwxr-xr-x 1 root root 235140 Jun 15 17:54 python27-chardet-2.2.1-4.el6.noarch.rpm -rwxr-xr-x 1 root root 513120 Jun 15 17:54 python27-crypto-2.6.1-5.el6.x86_64.rpm -rwxr-xr-x 1 root root 27168 Jun 15 17:54 python27-futures-3.0.3-3.el6.noarch.rpm -rwxr-xr-x 1 root root 291024 Jun 15 17:54 python27-jinja2-2.8.1-3.el6.noarch.rpm -rwxr-xr-x 1 root root 5839868 Jun 15 17:54 python27-libs-2.7.13-3.ius.el6.x86_64.rpm -rwxr-xr-x 1 root root 24560 Jun 15 17:54 python27-markupsafe-0.11-12.el6.x86_64.rpm -rwxr-xr-x 1 root root 70224 Jun 15 17:54 python27-msgpack-0.4.6-3.el6.x86_64.rpm -rwxr-xr-x 1 root root 391728 Jun 15 17:54 python27-psutil-5.4.2-1.ius.el6.x86_64.rpm -rwxr-xr-x 1 root root 78212 Jun 15 17:54 python27-pycurl-7.19.0-11.el6.x86_64.rpm -rwxr-xr-x 1 root root 100340 Jun 15 17:54 python27-requests-2.7.0-9.el6.noarch.rpm -rwxr-xr-x 1 root root 28776 Jun 15 17:54 python27-six-1.9.0-4.el6.noarch.rpm -rwxr-xr-x 1 root root 675764 Jun 15 17:54 python27-tornado-4.2.1-4.el6.x86_64.rpm -rwxr-xr-x 1 root root 109196 Jun 15 17:54 python27-urllib3-1.10.4-8.el6.noarch.rpm -rwxr-xr-x 1 root root 489436 Jun 15 17:54 python27-zmq-14.5.0-4.el6.x86_64.rpm -rwxr-xr-x 1 root root 9584392 Jun 15 17:54 salt-2018.3.1-1.el6.noarch.rpm -rwxr-xr-x 1 root root 2359628 Jun 15 17:54 salt-master-2018.3.1-1.el6.noarch.rpm -rwxr-xr-x 1 root root 1042364 Mar 23 2017 yum-3.2.29-81.el6.centos.noarch.rpm -rwxr-xr-x 1 root root 115416 Mar 23 2017 yum-utils-1.1.30-40.el6.noarch.rpm -rwxr-xr-x 1 root root 581800 Jun 15 17:54 zeromq-4.0.5-4.el6.x86_64.rpm
-
网康互联网控制网关白皮书
2009-08-18 11:01:55网康互联网控制网关(NetentSec Internet Control Gageway,简称NS ICG)是北京网康科技有限公司推出的一款专业的上网行为管理产品,是面向企业用户的软硬件一体化的控制管理网关。它提供强大的网页过滤功能,屏蔽... -
随意发企业信息助手 v2.60.zip
2019-07-15 15:17:52同时,随意发-企业信息助手发布精准、转化率,各大搜索引擎收录高、排名高、信息量大使您的产品遍布互联网各个角落,信息存续时间长,是低成本产品/服务网络推广的必选手段! 随意发软件特色 随意发-企业信息助手... -
RTSP协议网络摄像头网页无插件直播平台EasyNVR的云端综合管理平台EasyNVS提交基础配置报错原因分析
2020-09-14 10:28:19如果需要互联网访问前端设备视频,还可以通过部署EasyNVS视频管理平台在外网,来进行网络之间的穿透与视频交互。 EasyNVS视频管理平台可以在配置页面接入EasyNVR。但是我们在一次配置当中发现提交的时候,报错...EasyNVR是基于RTSP协议网络摄像头/NVR的流媒体视频平台,无需安装各个安防设备厂商的视频播放插件,即可接入海康、大华、宇视等网络硬盘录像机、NVR设备。如果需要互联网访问前端设备视频,还可以通过部署EasyNVS视频管理平台在外网,来进行网络之间的穿透与视频交互。
EasyNVS视频管理平台可以在配置页面接入EasyNVR。但是我们在一次配置当中发现提交的时候,报错“APIAuth eq|eq”。
分析问题
此处是在提交EasyNVS基础配置时候提示的错误,于是我们查看浏览器控制台发送的请求。
前端传过来的参数是“false”。下面观看后端的接口。
APIAuth这个参数限制只能传“0”或“1”,而前端传过来的参数是“false”,于是报错了。
解决问题
现在有两种解决方法。第一种修改前端,第二种修改后端。我们先从前端开始排查问题。
1、观看前端代码
onAPIAuth (data) { data=='0'?this.APIAuth='1':this.APIAuth='0' // console.log(this.APIAuth) },
这个是选择按钮的点击事件,在这里会将APIAuth这个参数改为“0”或“1”,那为什么提交还是会报错?
2、继续查看接口。
发现在获取配置接口的时候,后端传给前端的参数是“false”。到这里我们可以明白是后端的错误,所以下面检查后端。
3、查看后端的获取配置的接口。
func (h *APIHandler) GetBaseConfig(c *gin.Context) { sec := utils.Conf().Section("nvs") c.IndentedJSON(http.StatusOK, gin.H{ "Host": sec.Key("host").MustString(utils.LocalIP()), "Port": sec.Key("port").MustUint(10812), "DevicePassword": sec.Key("device_password").MustString(""), "APIAuth": utils.Conf().Section("http").Key("api_auth").MustString("0"), }) }
这里将APIAuth这个参数从配置文件读取,如果读不到就是“0”,查看配置文件,发现没有为http下api_auth这个参数。
4、于是我们可以在ini配置文件给api_auth设置默认值为1。这样传回前端就不会报False,也就不再报错了。
关于EasyNVS
EasyNVR对接EasyNVS可以利用网络实现按需直播,同时屏蔽各种网络环境问题,适用于有线、WIFI、4G、专网,EasyNVS管理平台能获取到EasyNVR的所有能力,并进行互联网化输出,同时进行统一化的管理和接口输出。
-
简述 Cookie、Token、JWT、Session之间的关系
2020-11-04 10:57:09早期互联网只是用来访问查看,不需要关心谁在访问查看。HTTP是一种无状态的协议,每个请求都是完全独立的,服务端无法确认当前访问者的身份信息,为了标示用户,就出现了Cookie,而Cookie、Token、JWT 都是用来标示...背景
早期互联网只是用来访问查看,不需要关心谁在访问查看。
HTTP
是一种无状态的协议,每个请求都是完全独立的,服务端无法确认当前访问者的身份信息,为了标示用户,就出现了Cookie
,而Cookie
、Token
、JWT
都是用来标示用户的。Cookie
如:iChochy用户发起访问,服务端为了进行会话跟踪,会为当前用户的访问会话(
Session
)生成一个会话ID(Session ID
),并通过Set Cookie
方式,将Session ID
发送给用户的客户端浏览器。客户端自动识别服务端发来的Cookie
信息,就会存储在客户端。再次请求时,都带上这个Cookie
信息来标示当前用户,服务端自动识别到Cookie
信息,就可以判断具体是哪个用户了。
Token
Token
是一个令牌,用户登录成功后服务端会生成一个令牌,用来关联会话(Session
)信息,如同Cookie
,只是需要手动传递。JWT
JWT
是JSON Web Token
的简称,可以理解为是Token
的升级版本,用户登录成功后服务端会生成的一个很长的字符串,中间用点(.)分隔成三个部分,内容包含Header.Payload.Signature
。JWT
的不同点就是可以携带具体的用户信息,不再只是标示ID
。Session
Session就是服务端生成的用户会话信息,一般就是用户信息,存储在服务端。
对比Cookie、Token、JWT
不同点 Cookie Token JWT 标准 系统默认 自定义 自定义 用户标示 包含 包含 包含 跨域 不支持 支持 支持 具信信息 不包含 不包含 包含 关系
关系如下图:
总结
Cookie
、Token
、JWT
都是请求无状态的一种补充,用来标示用户,只是侧重点不同。Cookie
是最原始的系统默认标准,前后端都会自动处理Cookie
信息,不需要过多的干预。而Token
、JWT
都是标准的升级和自定义,Token
出现解决了Cookie
不能跨域的问题,而JWT
可以携带具体的用户信息,将用户信息存储在客户端,解决了分布式用户信息存储。Session
是用户会话的具体信息,一般就是用户信息,如ID
、Role
、Auth
等。 -
Cookie的使用--爬虫
2018-07-24 22:01:29在访问互联网页面时,通过无状态协议(无法维持会话之间的状态)HTTP进行。例如:我们访问需要登录的网站,可以通过两种方式存储登录状态。 (1)Cookie保存会话信息,保存在客户端。 (2)Session保存会话信息,...在访问互联网页面时,通过无状态协议(无法维持会话之间的状态)HTTP进行。例如:我们访问需要登录的网站,可以通过两种方式存储登录状态。
(1)Cookie保存会话信息,保存在客户端。 (2)Session保存会话信息,保存在服务端。通过服务端给客户端发SessionID等信息,这些信息一般存储在客户端的 Cookie中。然后,用户在访问网站时,从Cookie中读取信息,然后从服务器中的Session中根据这一部分的Cookie信息 检索出客户端所有的会话信息,然后进行会话控制。 在爬虫的登录中,如果没有Cookie,我们登录成功了一个网页,但如果我们去爬取该网站的其他网页时,仍然会是未登 录状态。有了Cookie就会保存登录状态。 我们希望登录状态一直保持,python3使用Cookiejar库进行处理:
1)导入Cookie处理模块http.cookiejar
2)使用http.cookiejar.CookieJar()创建CookieJar对象
3)使用HTTPCookieProcessor创建cookie处理器,并以其为参数创建opener对象
4)创建全局默认opener对象
代码示例:
import urllib.request
import urllib.parse
import http.cookiejar
url="http://bbs.chinaunix.net/member.php?mod=logging&action=login&loginsubmit=yes&loginhash=L768q"
postdata=urllib.parse.urlencode({"username":"用户名","password":"密码"}).encode('utf-8')
req=urllib.request.Request(url,postdata)
req.add_header('')
#使用http.cookiejar.CookieJar()创建CookieJar对象
cjar=http.cookiejar.CookieJar()
#使用HTTPCookieProcesssor创建cookie处理器,并以其参数构建opener对象
opener=urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cjar))
#将opener安装为全局
urllib.request.install_opener(opener)
file=opener.open(req)
data=file.read()
#"wb"为以二进制覆盖写,"ab"为以二进制文件末尾增加
file=open("D:/Python36/myweb/1.html","wb")
file.write(data)
file.close()
url2="http://bbs.chinaunix.net/"
data2=urllib.request.urlopen(url2).read()
fhandle=open("D:/Python36/myweb/2.html","wb")
fhandle=write(data2)
fhandle.close()我们可以看到使用cookie后1.html和2.html保持了相同的登录状态。
-
fetion for linux
2011-05-17 13:09:30当前版本 v2.0 beta6 本应用程序基于LibFetion库编写, 了解更多请访问 ...中国移动飞信是中国移动推出的“综合通信服务“,可以免费从PC给发手机短信,而且不受任何限制,实现互联网和移动网间的无缝通信服务 -
定价是什么意思_云存储是啥意思?如何理解云存储一个月多少钱?
2020-12-31 16:56:46一个出类拔萃的公众号关注的人都发大财了随着信息访问的增加,对互联网信息存储的需求也在增加。使用云存储技术可以在线存储数据,这些数据可以从任何地方访问,而无需携带数据服务器。云存储是什么意思?云存储是一... -
企业为什么需要IT服务管理及其相关软件?
2019-02-19 18:45:15先是南航等公司不停的误发航班信息,让乘客吓出一身冷汗,然后是支付宝出错,无法付款,再是携程崩溃,所有功能无法使用,信息全无,后来又是某证券公司出错,股票交易失败让人心急如焚。 &nbsp;&... -
ehcache 缓存丢失_微服务:微服务化之缓存的架构设计要点及策略
2020-12-29 03:18:49导引本文章为《互联网高并发微服务化架构实践》系列课程的第五篇前四篇为:微服务:微服务化的基石—持续集成微服务:微服务的接入层设计与动静资源隔离架构实践微服务:微服务化的数据库设计与读写分离架构微服务:... -
session cookie 的区别(草稿)
2019-06-27 12:44:06为了把服务器的更多信息发到客户端,兴起了http,但是客户端每次访问都是全新的请求,服务端不存。 后来零几年随着交互式网站比如在线购物网站的兴起,需要记住浏览器一个用户的多个动作,就是会话(s... -
移动商务短信平台
2014-02-10 20:44:29本系统采用WEB方式的B/S系统架构,支持局域网和互联网访问;由当前流行的jsp+struts2+hibernate+spring+ajax等最新技术实现。 主要功能: 1.能进行短信的群发,接收; 2.支持通过Excel文件、文本文件批量导入导出... -
SDC沙盒,源代码加密,图纸加密,文档加密,技术分析
2012-10-16 10:39:44随着电脑以及互联网应用在中国的普及和发展,各领域越来越依赖电脑和网络。网络信息安全是越来越重要,为防止信息的泄密,SDC沙盒软件应运而生。企事业的机密文档,研发源代码,图纸等核心技术机密资料,很容易经... -
Windows网络实用工具集
2009-07-21 14:11:06但由于可以自定义所发数据报的大小及无休止的高速发送,Ping也被某些别有用心的人作为DDOS(拒绝服务攻击)的工具,前段时间Yahoo就是被黑客利用数百台可以高速接入互联网的电脑连续发送大量Ping数据报而瘫痪的。... -
PHPDisk E-Core企业网盘系统最新官方版
2021-04-03 09:09:14PHPDisk E-Core企业网盘系统最新官方版,PHPDisk E-Core(企业办公系列) 是一套针对企业网络办公,企业无纸化办公及文档管理系统的网络云存储网盘系统。专门针对网盘方面的上传、下载通用文件管理系统,用于代替传统... -
人力资源管理软件(免费破解版)
2010-03-15 11:50:13提供虚拟域名互联网浏览器访问 绿色软件,安全方便 单机永远免费,升级免费 人力资源管理软件人事档案功能介绍 人事档案管理 支持分公司管理 员工综合报告,员工相关的各类信息(基本记录、奖惩记录、物品领用... -
掌沃 WAP SNS免费全能程序.rar
2019-07-16 17:31:03WAP邮箱, 设置“WAP邮箱”功能用户能够直接用手机写电子邮件发邮件查收电子邮件;新闻模块;高级论坛;自助表单;社区类wap网游等强大的功能) 使用本系统建立起来的手机wap网站,可以做到非常轻松的管理自己的网站... -
百络网警局域网监控软件企业破解版
2011-09-02 21:41:29它只须安装在一台电脑上,即可对校园网内所有电脑全面监控和管理,它有对色情和反动内容的超强过滤能力,一切对不良内容的访问都被详细记录,无处可藏,它将使您能全面开放校园网和互联网的连接,让您永无后顾之忧。... -
脉冲扩展「Pulse Extension」-crx插件
2021-03-08 12:58:04从你的电脑上给你的朋友发短信。 这是我们用于Android Messenger应用程序的Chrome扩展程序:https://play.google.com/store/apps/details?id=xyz.klinker.messenger如果您想使用独立的Chrome应用程序,可以可以在... -
PHPDisk E-Core企业网盘系统 v3.0.zip
2019-07-06 12:43:25PHPDisk E-Core(企业办公系列) 是一套针对企业网络办公,企业无纸化办公及文档管理系统的网络云存储网盘系统。专门针对网盘方面的上传、下载通用文件管理系统,用于代替传统的FTP工具。 企业网盘是基于您自己公司的... -
hMailServer.zip
2019-07-11 12:00:31域和用户收/发限制、用户访问控制 群发用户 查毒引擎 AD (Windows 活动目录)用户自动同步 域名不限制 使用时间不限制 自定义备份数据 自动屏蔽/登陆限制。 防病毒... -
TQ即时聊天软件免费版的
2009-05-22 12:42:28它最大的特点就是不用下载安装,使用方便,能够随时随地通过访问相关网址进行即时通讯,在任何一台可以上网的计算机上都可以使用。具有绿色软件的特点。它是基于B/S架构,运行于web浏览器,用户无须下载任何程序即可... -
印刷网站管理系统.zip
2019-07-06 15:27:59栏目管理系统 - 自由单页栏目频道,智能化管理排版前台页面,无需较高的互联网技术 订单管理模块 - 包括订单查询、未审核、已审核、 进行中、 已发货、已付款、 已结束、存档查询等功能 成品管理系统 - 任意创建多个... -
云梯端crm客户管理系统.rar
2019-08-29 17:02:24**台依托互联网全面采用移动计算技术实现灵动企业,移动商务,您即使出差在外,也可以随时随地通过互联网,进行工作任务的指派、监控和各类企业信息的访问等,更不用担心无法掌控公司实时情况,使您全面实现"决策... -
因特达CRM客户关系管理系统 v2011.03.28.rar
2019-07-10 03:07:364、移动商务,远程遥控 平台依托互联网全面采用移动计算技术实现灵动企业,移动商务,您即使出差在外,也可以随时随地通过互联网,进行工作任务的指派、监控和各类企业信息的访问等,更不用担心无法掌控公司实时... -
因特达crm2009客户关系管理系统 v2009.07.12.rar
2019-07-05 06:12:52平台依托互联网全面采用移动计算技术实现灵动企业,移动商务,您即使出差在外,也可以随时随地通过互联网,进行工作任务的指派、监控和各类企业信息的访问等,更不用担心无法掌控公司实时情况,使您全面实现"决策... -
百新谷CRM客户关系管理系统2012
2012-08-06 16:06:07平台依托互联网全面采用移动计算技术实现灵动企业,移动商务,您即使出差在外,也可以随时随地通过互联网,进行工作任务的指派、监控和各类企业信息的访问等,更不用担心无法掌控公司实时情况,使您全面实现"决策... -
因特达crm2009客户关系管理系统 v2009.11.17
2009-11-23 14:10:18平台依托互联网全面采用移动计算技术实现灵动企业,移动商务,您即使出差在外,也可以随时随地通过互联网,进行工作任务的指派、监控和各类企业信息的访问等,更不用担心无法掌控公司实时情况,使您全面实现"决策... -
因特达crm2009客户管理软件 v2009.12.07.rar
2019-07-05 05:50:26时随地通过互联网,进行工作任务的指派、监控和各类企业信息的访问等,更不用担心无法掌 控公司实时情况,使您全面实现"决策千里",更适合分公司和办事机构的远程应用。 5、方便的通讯功能 对内:系统集成了... -
云梯端通用crm
2014-11-04 16:57:41平台依托互联网全面采用移动计算技术实现灵动企业,移动商务,您即使出差在外,也可以随时随地通过互联网,进行工作任务的指派、监控和各类企业信息的访问等,更不用担心无法掌控公司实时情况,使您全面实现"决策...