JavaScript前端跨網域存取解決方案
1.前言
XMLHttpRequest cannot load ... Origin ... is not allowed by Access-Control-Allow-Origin
這個問題常發生在前端程式嘗試以 AJAX (XMLHttpRequest) 方式存取跨網域資源時,因為 Security 的考量,造成 request 發送失敗的情況。
(奶綠茶) 網頁效能最佳化 image spritesheet
為了減少網頁 request 次數,會把多張圖片拼成一張,
有許多線上服務有提供這樣的功能,當然要用 Code 跑呀!
更快更安全的h2 (http 2)
Hypertext Transfer Protocol (HTTP) has been around since 1991, and we haven’t seen a major update since 1999, when HTTP/1.1 was released. During this time a lot of performance best practices have been passed around the web to try and circumvent some of the shortcomings in HTTP/1.1.
Sites such asPingdomandGTmetrixare the de facto when it comes to measuring a site’s performance and for the most part they’re excellent tools. However, some of their recommendations aren’t relevant in the era of HTTP/2.
JavaScript 宣告: var、let、const
首先,我們必須知道JavaScript有兩個範圍:全域與區域。
- 全域變數:在函式作用域(function scope)之外宣告的變數,全域變數在整個程式中都可以被存取與修改。
- 區域變數:在函式作用域(function scope)內宣告,每次執行函式時,就會建立區域變數再予以摧毀,而且函式之外的所有程式碼都不能存取這個變數。
聽起來是不是有點難理解呢? 我們用程式碼實際試試看吧!
更快更安全的 HTTP 2
如果說有一項技術可以讓你的網站瀏覽起來更快、更安全、SEO 加分,而且網站工程師不需要改 code 就可以全站使用。更重要的是,還不用額外花錢,天底下有這麼好的事情嗎?
話說 HTTP 通訊協定是全球資訊網(WWW)的基礎,是瀏覽器和網站伺服器之間的通訊協定。而HTTP/2是 HTTP/1.1 從 1999 年發布以來,十六年來的最重要的一次升級,這次升級的主要目的,就是為了改善瀏覽器的網頁下載速度(Page Load Time)。