前后端聯調場景以及可能會遇到的問題

一、異地和在一起辦公的方式

首先,在一起辦公(同局域網)的情況,最常用的應該是直接使用后端的局域網 IP 進行聯調,因為同一網絡內設備可以直接通信。步驟方面,需要后端提供 IP 和端口,前端配置接口地址,可能涉及跨域問題的處理,比如后端設置 CORS,或者前端用代理

然后是異地辦公的情況,這時候不能直接訪問對方的局域網 IP,需要其他方式。常用的可能有 VPN,搭建虛擬專用網絡,讓異地設備處于同一虛擬局域網;還有內網穿透工具,比如 ngrok、frp,把后端服務暴露到公網;另外,如果后端已經部署到測試服務器,直接用公網地址聯調也是一種方式

常用方式:

前后端聯調接口時,“在一起辦公” 和 “異地辦公” 的核心差異在于網絡是否互通:同一辦公環境通常在同一局域網,網絡直接可達;異地則需要通過特殊方式打通網絡。以下是兩種場景下最常用的聯調方式及步驟,重點說明前端需要關注的操作:

一、在一起辦公(同局域網環境)

常用方式:直接通過局域網 IP 聯調

同一辦公室的電腦通常連接同一 WiFi 或網線,處于同一局域網,可直接通過后端服務器的局域網 IP訪問接口。

步驟:
  1. 后端提供接口信息
    后端開發需要提供:

    • 后端服務的局域網 IP(如?192.168.66.108,可通過?ipconfig(Windows)或?ifconfig(Mac/Linux)查詢)
    • 接口端口(如?8080
    • 接口基礎路徑(如?/api
      示例完整接口地址:http://192.168.66.108:8080/api/user
  2. 前端配置接口地址
    前端在代碼中把接口基礎地址(baseURL)改為后端的局域網 IP + 端口,例如:

    javascript

    運行

    // 以axios為例
    const axiosInstance = axios.create({baseURL: 'http://192.168.66.108:8080/api', // 后端局域網地址timeout: 5000
    });
    
  3. 解決跨域問題(最常見的坑)
    前端本地服務(如?localhost:3000)調用后端接口(如?192.168.66.108:8080)時,因 “協議、域名、端口任一不同” 會觸發瀏覽器跨域限制,導致接口調用失敗。
    解決方式(二選一):

    • 后端處理:讓后端在服務中配置 CORS(跨域資源共享),允許前端域名訪問。
      示例(后端用 Node.js Express):

      javascript

      運行

      const cors = require('cors');
      app.use(cors({origin: 'http://localhost:3000' // 允許前端本地服務的請求
      }));
      
    • 前端代理:在前端開發工具(如 Webpack、Vite)中配置代理,把前端的接口請求轉發到后端,規避跨域限制。
      示例(Vite 配置?vite.config.js):

      javascript

      運行

      export default defineConfig({server: {proxy: {'/api': { target: 'http://192.168.66.108:8080', // 后端局域網地址changeOrigin: true // 模擬跨域請求的Origin}}}
      });
      


      此時前端代碼中?baseURL?可簡化為?/api(代理會自動轉發到后端)。
  4. 測試接口
    前端調用接口(如登錄、獲取數據),通過瀏覽器控制臺的 “Network” 面板查看請求是否成功,后端配合查看日志排查問題。

二、異地辦公(跨網絡環境)

異地時,前端和后端的電腦不在同一局域網,無法直接通過 IP 訪問,需要通過工具打通網絡或使用公網地址。

常用方式及步驟:
方式 1:通過 VPN 搭建虛擬局域網(推薦,安全穩定)

VPN(虛擬專用網絡)可讓異地設備 “假裝” 處于同一局域網,適合長期合作或對安全性要求高的場景(如公司內部系統)。

步驟:

  1. 搭建 / 連接 VPN

    • 公司通常會提供企業 VPN(如 OpenVPN、AnyConnect),前端和后端分別通過 VPN 客戶端連接到公司內網。
    • 連接成功后,雙方會獲得公司內網的 IP(如?10.0.1.xx),此時等同于 “同局域網”。
  2. 后續操作同 “在一起辦公”
    后端提供內網 IP + 端口,前端配置接口地址或代理,解決跨域(同上步驟 2-4)。

方式 2:后端用 “內網穿透” 工具暴露接口到公網(適合臨時調試)

如果沒有 VPN,后端可通過內網穿透工具(把局域網內的服務映射到公網),生成一個公網地址供前端訪問。
常用工具:ngrok(簡單易用)、frp(更靈活)、花生殼(國內)。

步驟(以 ngrok 為例):

  1. 后端配置內網穿透

    • 后端下載 ngrok(官網),注冊賬號并獲取授權 token。
    • 后端在終端運行命令,把自己的服務(如?8080?端口)映射到公網:

      bash

      ./ngrok http 8080  # 映射本地8080端口到公網
      
    • 運行后會生成一個公網地址(如?https://abc123.ngrok.io),后端把這個地址提供給前端。
  2. 前端配置接口地址
    前端直接使用 ngrok 生成的公網地址作為?baseURL

    javascript

    運行

    const axiosInstance = axios.create({baseURL: 'https://abc123.ngrok.io/api', // 公網地址timeout: 5000
    });
    
  3. 解決跨域
    同上,要么后端配置 CORS 允許該公網域名,要么前端配置代理轉發到該公網地址。

注意:免費 ngrok 的公網地址會隨機變化(每次重啟工具會變),適合臨時調試;付費版可固定地址。

方式 3:后端部署接口到公網測試服務器(適合穩定聯調)

如果項目有測試環境服務器(公網可訪問),后端可先把接口部署到測試服,前端直接調用測試服的公網地址。

步驟:

  1. 后端部署接口到測試服
    后端把接口代碼部署到公網測試服務器(如阿里云、騰訊云),確保服務器對外開放了接口端口(如?8080),并提供測試服地址(如?http://test-api.company.com:8080)。

  2. 前端配置接口地址
    前端直接使用測試服的公網地址作為?baseURL,無需考慮局域網限制:

    javascript

    運行

    const axiosInstance = axios.create({baseURL: 'http://test-api.company.com:8080/api',timeout: 5000
    });
    

  3. 測試與調試
    前端調用接口,通過測試服日志或后端本地調試工具(如遠程斷點)排查問題。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/919891.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/919891.shtml
英文地址,請注明出處:http://en.pswp.cn/news/919891.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【T113自制板卡】1 - 原理圖說明

文章目錄1、前言2、板卡資源總覽3、電源3.1、板卡供電3.2、電源方案4、OTG接口5、調試串口6、用戶LED7、FLASH8、按鍵9、BLE MESH10、Wi-Fi11、MIC12、喇叭接口13、MIPI接口1、前言 這幾天跟著小智學長的課程畫了一塊t113的板子。本文將描述該板卡的硬件說明。 2、板卡資源總…

WiFi有網絡但是電腦連不上網是怎么回事?該怎么解決?

有時候,咱們用電腦上網,打開WiFi一看,信號滿格,狀態欄顯示已連接,本來想著可以愉快地看個番、查個資料、玩個游戲了,結果一打開瀏覽器,直接完犢子了,網頁都打不開。這時候再看狀態&a…

【golang】制作linux環境+golang的Dockerfile | 如何下載golang鏡像源

一、關于如何下載docker images 這里需要大家自行科學上網如果沒有話,下面可以使用我自行打包的golang 的docker images 注意科學上網要開啟TUN模式二、golang鏡像源 1、阿里云公開鏡像 如果找不到golang包的小伙伴可以使用我的公開阿里鏡像docker pull registry.cn…

Day58 Java面向對象13 instanceof 和 類型轉換

Day58 Java面向對象13 instanceof 和 類型轉換 1.instanceof關鍵字 instanceof關鍵字的作用是判斷一個對象是否是某個類或其子類的實例,它返回一個布爾值true/false dog1 instanceof Dog; //返回true dog1 instanceof Animals; //返回true dog1 instanceof Object; //返回…

GEO優化案例:如何通過“知識圖譜+權威信號”提升品牌AI信任度

引言: “在AI日益成為用戶信息入口的今天,品牌信息能否被AI賦予‘權威’標簽,直接決定了其在搜索結果中的可見度和用戶采信度。移山科技正是這方面的專家。” 一、行業趨勢概覽:AI時代的品牌信任與GEO的價值 2025年&#xff0c…

讓數據可視化更簡單:Embedding Atlas使用指南

Embedding Atlas:交互式的嵌入可視化工具 在大數據時代,如何有效地理解和利用高維數據變得愈發重要。Embedding Atlas 是一款致力于提供大型嵌入(embeddings)交互式可視化的工具,允許用戶對嵌入數據進行可視化、交叉過…

復雜場景魯棒性突破!陌訊自適應融合算法在廠區越界檢測的實戰優化?

一、行業痛點:越界檢測的復雜場景挑戰 工業廠區周界安防中,越界檢測極易受環境干擾。據《2024工業智能安防白皮書》統計(注1),強逆光、雨霧天氣導致傳統算法誤報率超35%,而密集設備遮擋造成的漏檢率高達28…

Huggingface入門實踐 Audio-NLP 語音-文字模型調用(一)

吳恩達LLM-Huggingface_嗶哩嗶哩_bilibili 目錄 0. huggingface 根據需求尋找開源模型 1. Whisper模型 語音識別任務 2. blenderbot 聊天機器人 3. 文本翻譯模型translator 4. BART 模型摘要器(summarizer) 5. sentence-transformers 句子相似度 …

Python-Pandas GroupBy 進階與透視表學習

??一、數據分組(GroupBy)????核心概念??:將數據按指定字段分組,對每組進行聚合、轉換或過濾操作。??1. 分組聚合(Aggregation)??將分組數據聚合成單個值(如平均值、總和&#xff09…

MQTT 核心概念與協議演進全景解讀(二)

MQTT 在物聯網中的應用實例智能家居中的設備聯動在智能家居系統里,MQTT 協議扮演著至關重要的角色,是實現設備間高效通信與智能聯動的核心樞紐。以常見的智能家居場景為例,當清晨的陽光緩緩升起,光線傳感器檢測到光照強度的變化&a…

燧原科技招大模型訓練算法工程師

高級大模型訓練算法工程師(崗位信息已經經過jobleap.cn授權,可在csdn發布)燧原科技 上海職位描述負責大模型在AI芯片預訓練和微調等研發和客戶支持工作; 參與大模型訓練精度分析和性能調優;職位要求985/211大學計算機…

基于Java虛擬線程的高并發作業執行框架設計與性能優化實踐指南

基于Java虛擬線程的高并發作業執行框架設計與性能優化實踐指南 一、技術背景與應用場景 在分布式系統和微服務架構中,后端常需承載海量異步作業(如批量數據處理、定時任務、異步消息消費等),對作業執行框架提出了高并發、高吞吐、…

了解 PostgreSQL 的 MVCC 可見性基本檢查規則

1. 引言 根據 Vadim Mikheev 的說法,PostgreSQL 的多版本并發控制(MVCC)是一種“在多用戶環境中提高數據庫性能的高級技術”。該技術要求系統中存在同一數據元組的多個“版本”,這些版本由不同時間段內獲取的快照進行管理。換句話…

普通烘箱 vs 鎧德科技防靜電烘箱:深度對比與選擇指南

在電子制造、化工、航空航天等精密工業領域,烘箱作為關鍵工藝設備,其性能直接關系到產品可靠性和生產安全。普通烘箱與防靜電烘箱的核心差異在于靜電防護能力,而鎧德科技作為防靜電烘箱領域的專業廠商,其產品通過技術創新重新定義…

達夢數據庫巡檢常用SQL(一)

達夢數據庫巡檢常用SQL(一) 數據庫基本信息 數據庫用戶信息 數據庫對象檢查 數據庫基本信息 檢查授權信息: SELECT /*+DMDB_CHECK_FLAG*/ LIC_VERSION AS "許可證版本" ,SERIES_NO AS "序列號" ,CHECK_CODE AS "校驗碼" …

TypeScript的接口 (Interfaces)講解

把接口(Interface)想成一份“說明書”或“合同書”。說明書 比如電飯煲的說明書告訴你: 必須有“煮飯”按鈕必須有“保溫”功能顏色可以是白、黑、紅 接口在 TypeScript 里干的就是同樣的事:它規定一個對象“長什么樣”。 interfa…

Python本源詩話(我DeepSeek)

物理折行新注釋,直抒胸臆吾志名。 筆記模板由python腳本于2025-08-23 13:14:28創建,本篇筆記適合喜歡python和詩的coder翻閱。 學習的細節是歡悅的歷程 博客的核心價值:在于輸出思考與經驗,而不僅僅是知識的簡單復述。 Python官網…

博士招生 | 美國圣地亞哥州立大學 Yifan Zhang 課題組博士招生,AI 安全領域頂尖平臺等你加入!

內容源自“圖靈學術博研社”gongzhonghao學校簡介圣地亞哥州立大學(San Diego State University, SDSU)是美國加州南部久負盛名的公立研究型大學。學校坐落于科技產業高度活躍的南加州地區,與本地軟件、電信、生物科技、國防及清潔能源等領域…

Day22: Python渦輪增壓計劃:用C擴展榨干最后一絲性能!

目錄🔥 第一章:初識外掛 - ctypes初體驗1.1 C語言渦輪引擎1.2 Python調用秘籍? 第二章:Cython核彈級加速2.1 給Python穿上防彈衣2.2 編譯倒計時2.3 起飛測試🏎? 第三章:終極速度對決3.1 賽前準備3.2 比賽結果&#x…

如何修復“DNS服務器未響應”錯誤

“DNS服務器未響應”是一種常見的網絡錯誤,當設備無法與域名系統(DNS)服務器通信以將域名轉換為IP地址時,就會出現這種錯誤。DNS服務器的作用是將域名轉換為IP地址(例如,將www.example.com轉換為192.168.1.…