前端备忘

简介:

1. 为简单的满足分布式需求,用Cookie而不用Session。

     谷歌登录JD.COM,IE访问还需要登录吗?

     --由于不同的浏览器保存 Cookie 的方式也不同,所以同一台计算机上的不同浏览器不一定能够相互读取各自的 Cookie。

     登录网站后,将cookie从当前电脑复制到另一台电脑,用同样的浏览器打开网站,需要重新登录吗?

     --原理上可以

     如何实现基于cookie的单点登录?跨域问题

     --一个站点登录后往其他站点写cookie,利用jsonp传参

 

 2. 获得移动端的登录信息可以用Cookie。

 

 3. ajax调用跨域处理:

 

Java代码   收藏代码
  1. response.setHeader("Access-Control-Allow-Origin","http://m.architectj.com/");//"*"允许所有域名  
  2. response.setHeader("Access-Control-Allow-Credentials""true");  
  3. response.setHeader("Access-Control-Allow-Headers""Origin, X-Requested-With, Content-Type, Accept");  

 4. request.getHeader("Referer")的作用

Xml代码   收藏代码
  1. 1,防止盗连,比如我是个下载软件的网站,在下载页面我先用referer来判断上一页面是不是自己网站,如果不是,说明有人盗连了你的下载地址。  
  2. 2,电子商务网站的安全,我在提交信用卡等重要信息的页面用referer来判断上一页是不是自己的网站,如果不是,可能是黑客用自己写的一个表单,来提交,为了能跳过你上一页里的javascript的验证等目的。  
  3. 使用referer的注意事项:  
  4. 如果我是直接在浏览器里输入有referer的页面,返回是null(jsp),也就是说referer只有从别的页面点击连接来到这页的才会有内容。  
  5. 我做了个实验,比如我的referer代码在a.jsp中,它的上一页面是b.htm,c.htm是一个带有iframe的页面,它把a.jsp嵌在iframe里了。我在浏览器里输入b.htm的地址,然后点击连接去c.htm,那显示的结果是b.htm,如果我在浏览器里直接输入的是c.htm那显示的是c.htm  
Java代码   收藏代码
  1. /** 
  2.  * 校验来源为qwexyz域 
  3.  * @param refer 
  4.  * @return 
  5.  */  
  6. public static boolean checkRefer(String refer) {  
  7.     int start = refer.indexOf("//");  
  8.     if (start != -1 && refer.length() > start + 2) {  
  9.         refer = refer.substring(start + 2);  
  10.         int end  = refer.indexOf("/");  
  11.         if (end != -1) {  
  12.             refer = refer.substring(0, end);  
  13.             if (refer.endsWith("qwexyz.com")) {  
  14.                 return true;  
  15.             }  
  16.         }  
  17.     }  
  18.     return false;  
  19. }  
  20.   
  21. /** 
  22.  * 过滤回调函数 
  23.  * @param callback 
  24.  * @return 
  25.  */  
  26. public static String filter(String callback) {  
  27.     if (callback == null || "".equals(callback)) {  
  28.         return "";  
  29.     }  
  30.     if (callback.length() > 30) {  
  31.         callback = callback.substring(0,30);  
  32.     }  
  33.     callback = callback.replaceAll("[^\\w\\_\\.]"," ");  
  34.     return callback;  
  35. }  

  

 

 5. jsonp解决跨域访问

Xml代码   收藏代码
  1. 传统的ajax ,往往是 XMLHttpRequest ,读取一个接口,返回类似: {“Name”: “小明”, “Rank”: 7} json值。一般我们都采用xmlhttprequest方法通过状态判断执行请求是否完毕。  
  2.   
  3. JSONP的使用模式里,该URL回传的是由自定义传入函数名,动态生成JSON作为该函数入参,这就是JSONP 的“填充(padding)”或是“前辍(prefix)”的由来。  
  4.   
  5. 请求:  
  6.   
  7. <script type="text/javascript"  
  8.          src="http://www.example.com/RetrieveUser?UserId=1823&callback=parseResponse">  
  9.      </script>  
  10. 返回:  
  11. parseResponse({"Name": "Cheeso", "Id" : 1823, "Rank": 7})  
  12. 这个充分体现了js作为<strong>动态语言</strong>的特性。  

 

 

 6. 清除缓存

Java代码   收藏代码
  1. response.setHeader("Pragma""No-cache");  
  2. response.setDateHeader("Expires", -1);  
  3. response.setHeader("Cache-Control""no-cache,no-store");  

 

 7. 为了保持和线上地址一致,本地测试时,配上正式域名指向127.0.0.1



原文链接:[http://wely.iteye.com/blog/2281172]

相关文章
|
前端开发 JavaScript Java
前端基础知识备忘(2)
巩固下备忘下前端的基础知识
1345 61
|
JavaScript 前端开发 C++
前端基础知识备忘(1)
巩固下备忘下前端的基础知识
1512 51
|
前端开发
写给前端小白的「Promise备忘手册」!(建议收藏)✨(下)
前言 大家好,我是HoMeTown,Promise想必大家都知道,在平时的开发工程中也经常会有用到,但是Promise作为ES6的重要特性,其实还拥有很多丰富的知识,本文面向比较初级一些的同学,可以帮你搞懂Promise到底做了什么,顺便起到一个备忘录的作用。
109 0
|
前端开发 JavaScript
写给前端小白的「Promise备忘手册」!(建议收藏)✨(上)
前言 大家好,我是HoMeTown,Promise想必大家都知道,在平时的开发工程中也经常会有用到,但是Promise作为ES6的重要特性,其实还拥有很多丰富的知识,本文面向比较初级一些的同学,可以帮你搞懂Promise到底做了什么,顺便起到一个备忘录的作用。
110 0
|
缓存 前端开发 JavaScript
一份工作4年前端的Git备忘指南
一份工作4年前端的Git备忘指南
一份工作4年前端的Git备忘指南
|
24天前
|
存储 人工智能 前端开发
前端大模型应用笔记(三):Vue3+Antdv+transformers+本地模型实现浏览器端侧增强搜索
本文介绍了一个纯前端实现的增强列表搜索应用,通过使用Transformer模型,实现了更智能的搜索功能,如使用“番茄”可以搜索到“西红柿”。项目基于Vue3和Ant Design Vue,使用了Xenova的bge-base-zh-v1.5模型。文章详细介绍了从环境搭建、数据准备到具体实现的全过程,并展示了实际效果和待改进点。
106 2
|
24天前
|
JavaScript 前端开发 程序员
前端学习笔记——node.js
前端学习笔记——node.js
35 0
|
24天前
|
人工智能 自然语言处理 运维
前端大模型应用笔记(一):两个指令反过来说大模型就理解不了啦?或许该让第三者插足啦 -通过引入中间LLM预处理用户输入以提高多任务处理能力
本文探讨了在多任务处理场景下,自然语言指令解析的困境及解决方案。通过增加一个LLM解析层,将复杂的指令拆解为多个明确的步骤,明确操作类型与对象识别,处理任务依赖关系,并将自然语言转化为具体的工具命令,从而提高指令解析的准确性和执行效率。
|
24天前
|
存储 弹性计算 算法
前端大模型应用笔记(四):如何在资源受限例如1核和1G内存的端侧或ECS上运行一个合适的向量存储库及如何优化
本文探讨了在资源受限的嵌入式设备(如1核处理器和1GB内存)上实现高效向量存储和检索的方法,旨在支持端侧大模型应用。文章分析了Annoy、HNSWLib、NMSLib、FLANN、VP-Trees和Lshbox等向量存储库的特点与适用场景,推荐Annoy作为多数情况下的首选方案,并提出了数据预处理、索引优化、查询优化等策略以提升性能。通过这些方法,即使在资源受限的环境中也能实现高效的向量检索。
|
24天前
|
机器学习/深度学习 弹性计算 自然语言处理
前端大模型应用笔记(二):最新llama3.2小参数版本1B的古董机测试 - 支持128K上下文,表现优异,和移动端更配
llama3.1支持128K上下文,6万字+输入,适用于多种场景。模型能力超出预期,但处理中文时需加中英翻译。测试显示,其英文支持较好,中文则需改进。llama3.2 1B参数量小,适合移动端和资源受限环境,可在阿里云2vCPU和4G ECS上运行。
下一篇
无影云桌面