PHP 對 API 發 Request 常用 CURL,然後 Guzzle 是把 CURL 再包一層來做更多的進階操作。
Guzzle 底層使用 CURL,主要拿來呼叫 API、POST、GET 發送 HTTP Request。
不過 Guzzle 的版本也很多,各個版本抓取 Exception 的方式可能也不一樣,此篇使用 Guzzle 7 的版本。
個人筆記, 記錄關於 系統、程式、新聞 與 日常生活 等資訊
PHP 對 API 發 Request 常用 CURL,然後 Guzzle 是把 CURL 再包一層來做更多的進階操作。
Guzzle 底層使用 CURL,主要拿來呼叫 API、POST、GET 發送 HTTP Request。
不過 Guzzle 的版本也很多,各個版本抓取 Exception 的方式可能也不一樣,此篇使用 Guzzle 7 的版本。
Google / Googlebot 並不是所有 HTTP 的狀態都會處理的,這個表有列出他處理哪些狀態,分別是怎麼處理方式:
HTTP Status 418 的狀態說明是 teapot (茶壺),這到底是什麼意思呢?
RFC 2324、7168 甚至都有定義 418 Status
網頁打開連到某個網站,可以看到正常的內容,這個 HTTP Status code 是 200,沒有秀在頁面上。
但是偶爾會看到整頁白底,但是上面寫 400、403、500,或者畫面比較好看的 404 此頁面找不到 等等,那些是什麼呢?
那些數字有什麼意義?是怎麼判斷的呢?
想查看某個 IP 是否活著,或者 ICMP 的回應時間,可以使用 ping,但是 Web Server 也想要 ping 可以怎麼做呢?
\x 開頭編碼是 16進位的數字,可以直接轉成一般文字輸出,可詳見此篇:將 \x 開頭編碼的資料轉成中文輸出
但是想要將 \x 於 html input / textarea 傳送,再用 $_GET、$_POST 等接收 並且做轉換,要怎麼做呢?
現在使用 Firefox、Chrome 等瀏覽器,https 的頁面都會顯示綠色標章,而 https 網頁裡面有包含 http 的內容,就會顯示不安全等等的訊息(註1),要怎麼找出是哪些內容不安全呢?
簡單說,就是如何找出目前 https 的網頁,哪些內容(網址)還是 http 的。(註2)
HTTP/3 (h3) 的協定決定了,跟 HTTP/1.x 和 HTTP/2 很大的不同在於,HTTP 1.x 和 HTTP2 都走在 TCP 上,而 HTTP3 會走在 QUIC (UDP) 上。
HTTP 版本演進
PHP CURL 要傳送 PUT、DELETE、OPTIONS 要怎麼傳送?傳送過後,同一個 connection 要怎麼 reset?
Go 想要做 REST API 或者要對 router、dispatcher 等等的處理,可以使用 mux 的套件。
不過 mux 的套件在 GET 資料,若內容有 "/" 就是 %2F 的話,程式會直接給 404,程式就直接結束,無法處理,要怎麼解決這個問題呢?