# JavaScript
AJAX跨域POST问题(HTTP,HTTPS)
浏览器遵循同源策略(same-origin policy),它不允许当前站点的脚本与不同源的站点之间进行数据交互,只要协议、域名、端口有任何一个不同,都被视为不同源。但有时确实又必须在当前站点通过Ajax请求其他不同源的资源,这明显与同源策略相悖,于是就有了JavaScript跨域问题。
至于为什么要有同源策略,可以Google一下同源策略的详解,这里只记录如何解决Ajax跨域POst的问题,包括不同协议(HTTP, HTTPS)之间的Ajax请求。跨域问题的解决办法有很多,对于端口和协议的不同,只能通过后台来解决。
跨域资源共享(CORS)
CORS原理
CORS(Cross-Origin Resource Sharing)跨域资源共享,定义了一种跨域访问的机制,当必须在访问跨域资源时,浏览器与服务器应该如何沟通。CORS背后的基本思想就是使用自定义的HTTP头部让浏览器与服务器进行沟通,从而决定请求或响应是应该成功还是失败。
那些年,踩过的JavaScript之坑
你编,或者不编程,项目就在那里,还未完成。你调,或者不调试,BUG就在那里,早晚得改。你踩,或者不踩,坑都在那里,等下一个受害者。
变量作用域
未使用var关键字定义的变量都是全局变量
在JavaScript中定义变量时漏掉var并不会报错。
1 | function foo() { |