圖解計算機網絡:一條 HTTP 請求的網絡拓撲之旅
引言 常見的網絡拓撲結構如下圖所示: 在此拓撲中,終端設備通過 WiFi 連接到路由器,路由器再連接到光貓(或終端設備通過移動網絡 4G/5G 連接到基站),之後 ISP 網絡服務提供商接管網絡通信,將請求最終轉發至應用服務器。 從用户設備發出的 HTTP 請求是如何穿越網絡的?我們將深入探討這一過程。 HTTP 請求的網絡旅途 OSI 網絡體系結構 先從計算機網絡的基礎架構開始: 上圖展示了
昵稱 凌虛
貢獻者238
粉絲0
引言 常見的網絡拓撲結構如下圖所示: 在此拓撲中,終端設備通過 WiFi 連接到路由器,路由器再連接到光貓(或終端設備通過移動網絡 4G/5G 連接到基站),之後 ISP 網絡服務提供商接管網絡通信,將請求最終轉發至應用服務器。 從用户設備發出的 HTTP 請求是如何穿越網絡的?我們將深入探討這一過程。 HTTP 請求的網絡旅途 OSI 網絡體系結構 先從計算機網絡的基礎架構開始: 上圖展示了
昵稱 凌虛
跨域是什麼? 跨域問題是瀏覽器的安全機制,即同源策略(Same-origin policy) 限制不同源之間的交互,從而保證資源的安全 同源策略限制內容 Cookie、LocalStorage、IndexedDB 等存儲性內容只有同源才能訪問 AJAX 請求發送後,響應內容被瀏覽器攔截了 DOM 允許跨域加載的資源 img src=XXX link href=XXX scri
昵稱 牛肉燒烤屋
超時時間 概念 超時時間指系統在等待某個操作響應時設定的最大容忍時間閾值。當操作未在指定時間內完成,系統將主動終止等待並觸發預設處理邏輯 超時可以看做是一種降級手段。因為假設服務永遠能正常運行,我們並不需要超時時間,來保證服務的可用性和穩定性 常見需要依賴超時時間的場景 網絡層:TCP 協議的 connect timeout(Linux 默認 120 秒)、HTTP 請求的 socket ti
昵稱 牛肉燒烤屋
隨着 5 月 20 日至 21 日谷歌 I/O 開發者大會的腳步臨近,一則重磅消息在科技業界引發強烈震動 —— 谷歌正緊鑼密鼓地籌備推出基於 Gemini 2.5 的下一代 AI 搜索引擎,這場變革將徹底顛覆沿用多年的傳統搜索框界面。目前,這一全新搜索模式已悄然進入灰度測試階段,標誌着谷歌決心將其最重要的流量入口全面切換至 AI 驅動的 Gemini 生態系統,此舉無疑將給 OpenAI、Perp
昵稱 PoloAPI
谷歌I/O開發者大會以"AI原生生態"為核心戰略,圍繞技術升級、產品整合與商業模式展開深度佈局。以下是關鍵內容的結構化總結: 一、AI技術架構突破 Gemini模型矩陣 Gemini 2.5 Pro新增Deep Think模式,增強複雜推理能力(數學/編程任務準確率提升37%) 輕量級Gemini 2.5 Flash實現移動端40%延遲降低,支持邊緣設備部署 多媒體生成模型V
昵稱 PoloAPI
谷歌近期在Gmail移動應用中深度整合Gemini AI功能,實現了郵件與日程管理的無縫銜接。該功能主要通過以下創新提升用户日程效率: 一、跨應用功能整合 支持在Gmail應用內直接創建、修改和刪除日曆事件,無需切換至Google Calendar或其他應用 通過"Ask Gemini"入口實現語音/文字指令操作,例如輸入“將週四會議改到下午3點”即可觸發智能修改 提供每日日程智能概覽功
昵稱 PoloAPI
導語 Java9及以後的版本引入了模塊化特性,但是直到今天JDK21都發布了,依然沒有被大量使用起來,那麼這個特性就真的沒啥意義了嗎? 別忘了,Java本身可是把模塊化做到了極致的,所以可以利用這個特性對JRE本身進行定製化或者精簡化。 由於平時偶爾會開發一些Java的客户端應用,這時精簡JRE的需求就凸顯出來,讓自己的程序帶着最精簡的JRE到處運行。 實際實踐了一段時間之後發現“真香!” 現在把
昵稱 京東雲開發者
圖:模塊化手機概念 一、什麼是Java模塊化 Java模塊化(module)是Java9及以後版本引入的新特性。 官方對模塊的定義為:一個被命名的,代碼和數據的自描述集合。( the module, which is a named, self-describing collection of code and data)。 早在Java7的時候就被提出,但由於其複雜性,不斷跳票,直到Ja
昵稱 京東雲開發者
模塊導入 在 Python 中,一個 模塊 就是一個包含了 Python 代碼的 .py 文件。導入模塊的目的是引入該文件內定義的函數、類或變量等 💎方式一:導入整個模塊 ( import module_name ) 這是最常見和推薦的方式,因為它能保持清晰的命名空間,避免衝突 語句 作用 訪問方式 import math 將整個 m
昵稱 timeofsunrise
前言: 在計算機網絡通訊中有兩種傳輸方式。同步傳輸和異步傳輸。同步傳輸好比一座單行的高架橋, 異步傳輸好比一座雙通道的高架橋。同樣在程序代碼中也存在同步和異步的執行方式。先來了解一下程序的中幾個概念 進程和線程 線程與進程相比更輕量,而且線程之間是共享內存堆棧的,所以不同的線程之間交互非常容易實現。比如聊天室這樣的程序,客户端連接之間可以交互,比聊天室中的玩家可以任意的其他人發消息。用多線程
昵稱 葉劍飛雪
使用 VSCode 作為開發Python的IDE工具 IDE(Integrated Development Environment, 集成開發環境),目前支持Python的IDE有很多。有PyCharm、Eclipse、Atom、Anaconda、Sublime Text等等。我個人更喜歡使用 Visual Studio Code 也就是 VSCode。如果大家有自己喜歡的IDE工具,盡情享用!
昵稱 弗拉德
字符串或串(String)是由數字、字母、下劃線組成的一串字符。 字符串 字符串就是一系列字符。在Python中,用引號括起的都是字符串,其中的引號可以是單引號, 也可以是雙引號,如下所示: "This is a string." 'This is also a string.' 這種靈活性讓你能夠在字符串中包含引號和撇號: 'I told my friend, "Python is my
昵稱 弗拉德
作者 | 弗拉德 來源 | 弗拉德(公眾號:fulade_me) if 簡單示例 假設你有一個汽車列表,並想將其中每輛汽車的名稱打印出來。對於大多數汽車,都應以首字母大寫的方式打印其名稱,但對於汽車名'bmw',應以全大寫的方式打印。 下面的代碼遍歷一個列表,並以首字母大寫的方式打印其中的汽車名,但對於汽車名'bmw',以全大寫的方式打印: car_list = ['bmw','aud
昵稱 弗拉德
使用集成開發工具eclipse 開始之前,先給大家分享一個超詳細的eclipse教程,包含eclipse安裝包,視頻講解等等。 https://www.bilibili.com/vide... 1、java的集成開發工具很多,包括:eclipse、Intellij IDEA、netbeans..... eclipse IBM開發的。eclipse翻譯為:日食。寓意吞併SUN公司(SUN是太陽
昵稱 牛仔碼農
對於 Java 從業人員來説,無論是剛入門的新手還是專家,肯定都正在或者曾經使用過 Eclipse,這是一款優秀的編寫 Java 程序的 IDE. 然而可能大多數 Java 開發人員都沒有意識到,Eclipse 同時也能用來進行另一款在企業管理軟件開發領域大名鼎鼎的編程語言的開發工作,這門語言就是 ABAP. 在 2022 年 3 月最新的 TIOBE 編程語言排行榜上,Python, C 和 J
昵稱 註銷
我在 Eclipse 裏選中 com 文件夾下選中一個 .java 文件,這個 Java 文件實現了 public static void main(String[] args) 方法,我想作為一個 Java 應用直接運行它。 選擇 Run As - Java Application: 遇到錯誤消息:Selection does not contain a main type: 我選擇 Run
昵稱 註銷
專業在線打字練習平台-巧手打字通,只輸出有價值的知識。 一 數據庫操作,要謹慎 1.1 SQL注入,危害大 通過SQL注入等方式,把用户輸入的數據當做代碼執行。 簡單場景舉例:假如程序裏有以下基於訂單號查詢訂單的SQL語句,訂單號是用户從頁面傳遞過來的: "SELECT * FROM my_order WHERE order_no = '" + OrderNo+ "'"; 如果黑客構造瞭如下訂單號
昵稱 用户bPdd2O9
本文將帶你從零開始,理解Go 泛型的概念、語法、使用方式,並配有示例代碼,幫助你快速上手。 文章目錄 什麼是泛型? 1. 泛型函數 示例:一個求長度的泛型函數 2. 泛型結構體 示例:一個通用的盒子 3. 泛型集合(Set) 示例:一個通用的集合 4. 泛型通道(Channel) 示例
昵稱 axiaoxin
有沒有想過,當你需要對 API 進行測試或快速查看網站內容時,有哪些工具可以派上用場呢? 這時,你會發現 cURL 是你的好幫手。cURL,簡而言之,是一個功能強大的命令行工具,使得我們可以通過各種網絡協議與服務器進行交流,無論你是編程領域的新手還是資深開發人員,cURL 都是你工具箱裏必不可少的一件利器。 cURL 簡介 cURL 的神奇之處在於它對廣泛的協議如 HTTP、HTTPS 和 FTP
昵稱 Apifox
在工作流程中,為了快速驗證 API 接口有效性,團隊成員經常轉向直接執行 cURL 命令的方法。這種做法不僅節省時間,而且促進了團隊效率的提升。對於使用 Windows 系統的用户來説,這裏有一套詳細的操作指南來執行 cURL 命令。 檢查 Windows 系統的 cURL 環境 Windows 系統默認情況下應該已經安裝了 cURL 環境。可以通過快速的步驟來驗證:按下Win + R鍵,輸入cm
昵稱 火爆的鍵盤
今天專門來討論下 API 測試中不可避免的部分之一 :cURL。 cURL(client URL)是一個常用的命令行工具,用於通過 URL 傳輸數據。 開發人員通過 cURL 將數據發送到服務器並接收來自服務器的數據。具體來説,任何用户都可以通過這個命令行界面(CLI)指定一個服務器 URL(要向其提交請求的位置)和要發送到服務器 URL 的數據。cURL 支持多種協議(方案),如 DICT、FI
昵稱 Apifox
眾所周知用windows環境下寫swoole的項目是真的麻煩,不是虛擬機就是測試服務器開發,好在現在有docker可以很方便的使用各種開發環境,但是資源佔用也不少。偶然發現swoole-cli靜態編譯了php的swoole環境,確實很方便。 swoole-cli下載地址 3端現在有 php版本8.0以上 就是用swoole-cli敲起命令總有維和感,就用批處理做了映射,還是用php的命令的方式打開
昵稱 vanve
前言: 有時因為各種原因重裝了系統,工具有時也重裝,但是又沒有把軟件的設置導出來。最開始的工具配置過了段時間給遺忘了,比如平時順手的關閉窗口快捷鍵,composer,git等的設置。 方法總結: 修改快捷方式點擊”File”-”Settings”-”keyMap”就可以看到那些快鍵鍵的各種分類,比如我常喜歡用”ctrl+w”關閉正在打開的窗口,所以就選擇”windows”分類下的Editor
昵稱 北橋蘇
從全大寫到駝峯:程序員必會的 6 種英文字母大小寫轉換場景! 你有沒有在 Code Review 時,因為一行全小寫的常量名被同事無情 diss? 有沒有因為數據庫字段是snake_case(小寫下劃線),而前端接口卻要求 camelCase(駝峯),加班寫正則替換或者貼代碼寫映射關係? 別慌,這些“大小寫修羅場”其實一條在線指令就能解決。今天我用 6 個高頻場景,帶你把「英文字母大小寫轉換」從手
昵稱 舒米勒