首页 文章 精选 留言 我的

精选列表

搜索[Web安全],共10000篇文章
优秀的个人博客,低调大师

Python全栈 Web(Django框架、模板)

1.Django中的模板(Templates) 1.什么是模板 模板就是要动态呈现给用户的网页 模板的本质就是网页- 前后端,动静结合的网页 Django的模板引擎是由Django自己提供的,并不是Jinja2, 所以Django的模板语法与Flask(Jinja2)的语法会有一些不同 2.模板的设置 在 settings.py 中 有一个 TEMPLATES 变量 1.BACKEND:指定使用的模板的引擎 2.DIRS :指定模板的存放目录们 1.如果写东西:则按照写好的路径去找模板 2.如果未写东西:那么Django会自动的到每个应用中所有一个叫templates的目录来作为模板的存放目录 3.APP_DIRS : 是否自动搜索应用中的目录 True:表示搜索应用中的 templates 的目录 # Static files (CSS, JavaScript, Images) # https://docs.djangoproject.com/en/1.11/howto/static-files/ # 静态文件的访问路径 STATIC_URL = '/static/' # 静态文件的存储路径 STATICFILES_DIRS = (os.path.join(BASE_DIR, 'static'),) 1.通过 loader 对象获取模板,再通过HttpResponse进行响应 from django.template import loader def xxViews(request): #1.通过 loader 加载模板 t = loader.get_template("模板名称") #2.将模板渲染成字符串 html = t.render() #3.将字符串通过HttpResponse响应给客户端 return HttpResponse(html) 2.使用 render 直接加载并响应模板 def xxViews(request): return render(request,'模板的名称') # Create your views here. def temp_views(request): #1.通过loader加载模板 t=loader.get_template('01-temp.html') #2.将模板渲染成字符串 html=t.render() #3.再通过HttpResponse将字符串响应给浏览器 return HttpResponse(html) # 使用render加载模板 def temp02_views(request): return render(request, '01-temp.html') 4.模板的语法 1.变量 1.作用:将后端的数据传递给模板进行显示 2.在Django中允许作为变量传递给模板的数据类型 字符串,整数,列表,元组,字典,函数,对象 3.变量的语法 变量们必须要封装到字典中才能传递给模板 1.使用 loader 加载模板 dic = { '变量名1':'值1', '变量名2':'值2', } t = loader.get_template('xxx.html') html = t.render(locals() 或 dic) return HttpResponse(html) 2.使用 render 加载并返回模板 dic = { '变量名1':'值1', '变量名2':'值2', } return render(request,'xx.html',dic) 4.在模板中使用变量 {{变量名}} # http://localhost:8000/03-var def var_views(request): str = "模板中的变量-字符串" num = 3306 tup = ('谢逊','韦一笑','殷素素','金花婆婆') list = ['孙悟空','猪八戒','沙和尚'] dic = { 'BJ':'北京', 'SZ':'深圳', 'SH':'上海', } say = sayHi() dog = Dog() return render(request,'03-var.html',locals()) <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <!-- 取出每个变量进行显示 --> <h3>str:{{ str }}</h3> <h3>num:{{ num }}</h3> <h3>tup:{{ tup }}</h3> <h3>tup[0]:{{ tup.0 }}</h3> <h3>list:{{ list }}</h3> <h3>list[1]:{{ list.1 }}</h3> <h3>dic:{{ dic }}</h3> <h3>dic['SZ']:{{ dic.SZ }}</h3> <h3>say:{{ say }}</h3> <h3>dog.name:{{ dog.name }}</h3> <h3>dog.eat:{{ dog.eat }}</h3> <!-- 宠物名称:{{ dog.name }} --> {% comment "宠物名称" %} 宠物名称:{{ dog.name }} {% endcomment %} </body> </html> django中不同于jinja2的模板 django的模板中不能使用索引和切片 只能通过·的方式来获取元素 但不影响循环 2.标签 1.作用 将服务器端的功能嵌入到模板中 2.语法 {% 标签内容 %} 3.常用标签 1. comment 标签 2. for 标签 作用:循环遍历 列表,字典,元组 语法: {% for 变量 in 列表|元组|字典 %} {% endfor %} 循环中允许使用 forloop 内置变量来获取循环的信息 forloop.counter : 当前循环遍历的次数 forloop.first : 判断是否为第一次循环 forloop.last : 判断是否为最后一次循环 3.if 标签 作用:在模板中完成变量的判断操作 语法: 1. if {% if 条件 %} 满足条件时要执行的内容 {% endif %} 2. if ... else {% if 条件 %} 满足条件时要执行的内容 {% else %} 不满足条件时要执行的内容 {% endif %} 3.if ... elif ... else {% if 条件1 %} 满足条件1时要执行的内容 {% elif 条件2 %} 或满足条件2时要执行的内容 {% elif 条件3 %} 或满足条件3时要执行的内容 {% else %} 或以上条件都不满足时要执行的内容 {% endif %} <!-- 通过for循环便利tup --> <h1>使用for循环便利tup</h1> {% for t in tup %} <p {% if forloop.first %} style="background:red;" {% elif forloop.last %} style="background:blue;" {% else %} style="background:pink;" {% endif %} > <span>内容:{{ t }}</span> <br> <span>下标:{{ forloop.counter0 }}</span> <br> <span>次数:{{ forloop.counter }}</span> <br> <span>第一次循环:{{ forloop.first }}</span> <br> <span>最后一次循环:{{ forloop.last }}</span> </p> {% endfor %} <h1>通过for实现的select</h1> <select> {% for t in tup %} <option value="{{ forloop.counter0 }}" {% if forloop.last %} selected {% endif %} >{{ t }}</option> {% endfor %} </select> 3.过滤器 1.什么是过滤器 在变量输出显示之前,对变量进行筛选和过滤 2.过滤器的语法 {{变量|过滤器:参数}} 3.常用过滤器 1.{{value|upper}} 将value变为大写 2.{{value|lower}} 将value变为小写 3.{{value|add:num}} 将num值累加到value之后 4.{{value|floatformat:n}} 将value四舍五入到n位小数 5.{{value|truncatechars:n}} 将value截取保留至n位字符(包含...) 4.静态文件 1.什么是静态文件 在Django中,不被解释器所动态解析的文件就是静态文件 2.Django中静态文件的处理 在settings.py中设置有关静态文件的信息: 1.设置静态文件的访问路径 在浏览器中通过哪个地址能够找到静态文件 STATIC_URL = '/static/' 如果访问路径是 http://localhost:8000/static/...,那么就到静态文件存储路径中找文件而不走路由(urls.py) 2.设置静态文件的存储路径 指定静态文件存储在服务器上的哪个位置处 STATICFILES_DIRS=(os.path.join(BASE_DIR,'static'),) 静态文件目录的存放位置: 1.在项目的根目录处创建一个 static 目录,用于保存静态文件们 2.每个应用中也可以创建一个 static 目录,用于保存静态文件们 3.访问静态文件 1.直接使用静态文件访问路径进行访问 http://localhost:8000/static/.. ex: <img src="/static/images/a.jpg"> <img src="http://localhost:8000/static/images/a.jpg"> 2.使用 {% static %} 访问静态资源 {% static %} 表示的就是静态资源的访问路径 1.在模板的最顶层增加 {% load static %} 2.在使用静态资源时 <img src="{% static 'images/a.jpg'%}"> # http://localhost:8000/04-static def static_views(request): return render(request, '04-static.html') {% load static %} <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <!-- 显示静态资源文件 --> <p> <img src="/static/images/shuaige.jpg"> </p> <p> <img src="http://localhost:8000/static/images/shuaige.jpg"> </p> <p> <img src="{% static 'images/shuaige.jpg' %}"> </p> </body> </html>

优秀的个人博客,低调大师

Python全栈 Web(Ajax 概述 创建)

什么是AJAX Asynchronous JavaScript And Xml 异步的 JS 和 Xml 通过js异步的向服务器发送请求并接受响应数据 同步访问: 当客户端向服务器发送请求时 服务器在处理的过程中浏览器只能等待 异步访问: 当客户端向服务器发送请求时 服务器在处理的过程中 客户端可以做其他操作 不需要一直等待 AJAX优点: 异步访问 局部刷新 使用场合: 搜索建议 表单验证 前后端完全分离 AJAX核心对象 异步核心对象(XMLHttprequest): 什么是XMLHTTPRequest 代替浏览器向服务器发送异步请求并接受响应的 “异步对象” 是由js来提供的 创建异步对象 主流的异步对象是XMLHTTPRequest类型的 并且主流浏览器(IE+ Chrome Firefox Safari Opera)都支持 低版本浏览器中(IE6以下)就不

优秀的个人博客,低调大师

Python全栈 Web(Ajax JSON JQuery)

JOSN: Javascript Object Notation 作用: 主要约束前后端交互数据的格式 JSON的格式 表示单个对象 使用{} 采用键值对的格式保存数据 键必须使用双引号引起来 相当于Python的字典 表示多个对象 使用[]表示一个数组 数组中允许包含多个字符串或对象 jQuery中的循环: $arr.each(function(i, obj)){ $arr:表示jQuery中的数组 i:表示当前元素的下标 obj:表示的是当前元素 }; $.each(arr,function(i, o

优秀的个人博客,低调大师

Python全栈 Web(jQuery 外卖套餐)

说实话 前端这些东西 真就是一个字 背就完事了 背的越多 就越牛逼 1.jQuery动画 1.基本显示 / 隐藏 $obj.show() / $obj.show(执行时长); $obj.hide() / $obj.hide(执行时长); 2.滑动式显示 / 隐藏 $obj.slideDown() / $obj.slideDown(执行时长); $obj.slideUp() / $obj.slideUp(执行时长); 3.淡入淡出式显示 / 隐藏 $obj.fadeIn() / $obj.fadeIn(执行时长); $obj.fadeOut() / $obj.fadeOut(执行时长); 2.jQuery插件 1.下载插件并引入(jquery,插件文件,css文件) 2.结合当前网页修改css 3.去插件中修改数据(替换图片/图片名称) 无聊的前端三剑客终

优秀的个人博客,低调大师

Python全栈 Web(JavaScript 函数、数组)

循环: for循环 简化版while循环 语法: for(表达式1;表达式2;表达式3) { 循环体 } 表达式1:循环条件初始化 表达式2:循环终止条件 表达式3:更新循环条件 流程: 1.先执行表达式1 声明条件 并且自走一次 2.表达式2 与循环条件的boolean值 3.进行循环操作 4.表达式3 更新循环条件 返回判断表达式2 for 和 while对比: 相同: 先判断条件然后在进行循环操作 不同: while:优先使用在不确定循环次数的场合下 for:优先使用在已知循环次数的条件下 通常用来遍历数据结构 循环的嵌套: 允许一个循环内部再出现一个循环 for(var i = 0; i <= 10; i++){ for(var x = 0; x <= 10; x++){ 循环体 } } 外层循环走以次内层循环走一轮 函数: function 是一段被定义好并且可以独立反复执行 并包含多条执行语句的代码块 在JS中创建函数: function 函数名 (参数){ 函数体 [返回值] //[] 代表可省略 } 参数列表; 如果没有参数为空 有则用逗号隔开多个参数 调用时有参数没有传参的参数值为undefined 返回值: 在函数体内经过运算后 返回给函数调用者的值 有返回值需要用 return进行返回 但是只能返回一个值 函数的调用: 在任意能写JS代码的地方 都可以调用函数 有参数 传递参数 否则参数列表为空 有返回值可以用变量接收 没有则返回 undefined 匿名函数: 匿名函数是一个没有名称的函数 该类函数会针对某一个 功能而存在 不能独立声明 语法: function (参数列表){ 函数体 } window.onload = function(){ console.log("hello world!"); } 网页加载的时所执行的内容都可以放在window.onload里 变量的作用域: 什么是变量的作用域? 指的是变量的可访问范围 js的作用域: 局部变量 使用var关键字声明在函数内的变量 就是局部变量 只能在函数内使用 全局变量 在function外声明的变量都是全局变量 声明变量只要不使用var关键字申明的变量都是全局变量 全局变量可以在任意函数内使用 尽量所有的变量都使用var关键字声明 变量的声明提前: 在JS中使用var关键字声明的变量在程序执行之前 都会被预读到所在作用域的顶端 但是赋值还会保留在原位 在变量赋值之前调用 不会报错 值为undefined 数组 - Array: 什么是数组? 以一种用于保存批量数据的数据结构 数组是按照线性结构来保存数据的 除第一元素外每一个元素都有一个“前驱元素” 除最后一个元素外每一个元素都有一个“后驱元素” 创建数组: 数组直接量创建: var 数组名 = []; var 数组名 = [1, 2, 3, "a", "b"]; 构造函数创建: var 数组名 = new Array(); var 数组名 = new Array(1, 2, 3, "a", "b"); *var 数组名 = new Array(5); //默认5个 undefined值 下标从5开始 数组的使用; 获取或设置数组的元素值 一律使用数组的下标 范围: 0 ~ arr1.length - 1 var arr1 = [1, 2, 3, 4, 5]; 索引: arr1[3] // 4; 索引超出范围是不会报错的 返回值为:undefined 索引赋值: arr1[3] = 9 // [1, 2, 3, 9, 5] 赋值也可以超出范围 在已有的最后一个元素和 超出范围元素之间的所有元素都为 empty 如果进行索引取值 结果都为:undefined 获取数组的长度: 属性: length 用法: 数组名.length 使用场合: 1.可以向数组的尾部插入元素 2.数组的长度 3.配合循环遍历数组中的每个元素 for (var i = 0; i < arr1.length; i++){ console.log(arr1[i]) } 在控制台中打印以下图形 * 4个空格1个* *** 3个空格3个* ***** 2个空格5个* ******* 1个空格7个* ********* 0个空格9个* <!DOCTYPE html> <html> <head> <title></title> <meta charset="utf-8"> <script type="text/javascript"> var line = 5; for (var i = 1; i <= line; i++){ var msg = ""; for (var j = 1; j <= line - i; j++){ msg += " "; } for (var k = 1; k <= i * 2 -1; k++){ if (k == 1 || k == i * 2 - 1){ msg += "*"; } else { msg += " "; } } console.log(msg); } for (var i = 1; i <= line; i++){ var msg = ""; for (var j = 1; j <= i; j++){ msg += " "; } for (var k = 1; k <= (line - i) * 2 -1; k++){ if (k == 1 || k == (line -i) * 2 -1){ msg += "*"; } else { msg += " "; } } console.log(msg) } </script> </head> <body> </body> </html>

优秀的个人博客,低调大师

web前端系列面试题(一)

html&css 行内元素有哪些?块级元素有哪些?空元素有那些? link和@import的区别是? 请描述一下cookies ,sessionStorage 和 localStorage 的区别? display 与 与 visibility 有何异同? js JavaScript 中,this 关键字的作用是什么? 什么是正则表达式?在 JavaScript 中,如何应用正则表达式? JavaScript原型,原型链 ? 有什么特点? 编程题:编写一个数组去重的方法。 介绍JavaScript的基本数据类型。 说说写JavaScript的基本规范? JavaScript原型,原型链 ? 有什么特点? JavaScript有几种类型的值?(堆:原始数据类型和 栈:引用数据类型),你能画一下他们的内存图吗? Javascript如何实现继承? Javascript创建对象的几种方式? Javascript作用链域? 谈谈This对象的理解。 eval是做什么的? 什么是window对象? 什么是document对象? null,undefined的区别? 写一个通用的事件侦听器函数(机试题)。 [“1”, “2”, “3”].map(parseInt) 答案是多少? 关于事件,IE与火狐的事件机制有什么区别? 如何阻止冒泡? 什么是闭包(closure),为什么要用它? javascript 代码中的”use strict”;是什么意思 ? 使用它区别是什么? 如何判断一个对象是否属于某个类? new操作符具体干了什么呢? 用原生JavaScript的实现过什么功能吗? Javascript中,有一个函数,执行时对象查找时,永远不会去查找原型,这个函数是? 对JSON的了解? [].forEach.call($$(""),function(a){ a.style.outline="1px solid #"+(~~(Math.random()(1<<24))).toString(16) }) 能解释一下这段代码的意思吗? js延迟加载的方式有哪些? Ajax 是什么? 如何创建一个Ajax? 同步和异步的区别? 如何解决跨域问题? 页面编码和被请求的资源编码如果不一致如何处理? 模块化开发怎么做? AMD(Modules/Asynchronous-Definition)、CMD(Common Module Definition)规范区别? requireJS的核心原理是什么?(如何动态加载的?如何避免多次加载的?如何 缓存的?) 让你自己设计实现一个requireJS,你会怎么做? 谈一谈你对ECMAScript6的了解? ECMAScript6 怎么写class么,为什么会出现class这种东西? 异步加载的方式有哪些? documen.write和 innerHTML的区别? DOM操作——怎样添加、移除、移动、复制、创建和查找节点? .call() 和 .apply() 的含义和区别? 数组和对象有哪些原生方法,列举一下? JS 怎么实现一个类。怎么实例化这个类 JavaScript中的作用域与变量声明提升? 如何编写高性能的Javascript? 那些操作会造成内存泄漏? JQuery的源码看过吗?能不能简单概况一下它的实现原理? jQuery.fn的init方法返回的this指的是什么对象?为什么要返回this? jquery中如何将数组转化为json字符串,然后再转化回来? jQuery 的属性拷贝(extend)的实现原理是什么,如何实现深拷贝? jquery.extend 与 jquery.fn.extend的区别? jQuery 的队列是如何实现的?队列可以用在哪些地方? 谈一下Jquery中的bind(),live(),delegate(),on()的区别? JQuery一个对象可以同时绑定多个事件,这是如何实现的? 是否知道自定义事件。jQuery里的fire函数是什么意思,什么时候用? jQuery 是通过哪个方法和 Sizzle 选择器结合的?(jQuery.fn.find()进入Sizzle) 针对 jQuery性能的优化方法? Jquery与jQuery UI有啥区别? JQuery的源码看过吗?能不能简单说一下它的实现原理? jquery 中如何将数组转化为json字符串,然后再转化回来? jQuery和Zepto的区别?各自的使用场景? 针对 jQuery 的优化方法? Zepto的点透问题如何解决? jQueryUI如何自定义组件? 需求:实现一个页面操作不会整页刷新的网站,并且能在浏览器前进、后退时正确响应。给出你的技术实现方案? 如何判断当前脚本运行在浏览器还是node环境中?(阿里) 移动端最小触控区域是多大? jQuery 的 slideUp动画 ,如果目标元素是被外部事件驱动, 当鼠标快速地连续触发外部元素事件, 动画会滞后的反复执行,该如何处理呢? 把 Script 标签 放在页面的最底部的body封闭之前 和封闭之后有什么区别?浏览器会如何解析它们? 移动端的点击事件的有延迟,时间是多久,为什么会有? 怎么解决这个延时?(click 有 300ms 延迟,为了实现safari的双击事件的设计,浏览器要知道你是不是要双击操作。) 知道各种JS框架(Angular, Backbone, Ember, React, Meteor, Knockout…)么? 能讲出他们各自的优点和缺点么? Underscore 对哪些 JS 原生对象进行了扩展以及提供了哪些好用的函数方法? 解释JavaScript中的作用域与变量声明提升? 那些操作会造成内存泄漏? JQuery一个对象可以同时绑定多个事件,这是如何实现的? Node.js的适用场景? (如果会用node)知道route, middleware, cluster, nodemon, pm2, server-side rendering么? 解释一下 Backbone 的 MVC 实现方式? 什么是“前端路由”?什么时候适合使用“前端路由”? “前端路由”有哪些优点和缺点? 知道什么是webkit么? 知道怎么用浏览器的各种工具来调试和debug代码么? 如何测试前端代码么? 知道BDD, TDD, Unit Test么? 知道怎么测试你的前端工程么(mocha, sinon, jasmin, qUnit..)? 前端templating(Mustache, underscore, handlebars)是干嘛的, 怎么用? 简述一下 Handlebars 的基本用法? 简述一下 Handlerbars 的对模板的基本处理流程, 如何编译的?如何缓存的? 用js实现千位分隔符?(来源:前端农民工,提示:正则+replace) 检测浏览器版本版本有哪些方式? 我们给一个dom同时绑定两个点击事件,一个用捕获,一个用冒泡,你来说下会执行几次事件,然后会先执行冒泡还是捕获

优秀的个人博客,低调大师

Gradle使用gretty插件运行web项目

一、gradle安装gretty插件 buildscript { repositories { jcenter() } dependencies { classpath "gradle.plugin.org.akhikhl.gretty:gretty:2.0.0" } } plugins { id 'java' id 'war' id 'org.akhikhl.gretty' version "2.0.0" } 二、自定义启动设置 gretty { httpPort = 8081 // 'jetty7', 'jetty8', 'jetty9', 'jetty93', 'jetty94', 'tomcat7', 'tomcat8' servletContainer = 'jetty9' contextPath = '/' } 三、更多自定义配置 https://akhikhl.github.io/gretty-doc/

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

用户登录
用户注册