你是如何構建 Web 前端 Mock Server 的?

時間 2021-05-06 17:14:24

1樓:simsir

放乙個小程式的:https://

2樓:dboy

你需要的不是Mock Server,而是在前端設計高質量的測試機制,實現真正的前後端分離開發。

function loadProducts(options) ;

if (options.fixture無後台返回杜撰的資料return new Promise(function(resolve, reject) {

resolve(fixtureelse {// 有後台就正常請求伺服器

return $.get('/products'

上面只是實現的一種,比較土,你也可以用DI,隨你,另外,有些庫和框架本身就提供類似功能。

3樓:牛牛

GitHub - typicode/json-server: Get a full fake REST API with zero coding in less than 30 seconds (seriously)

作為乙個web開發者,還是可以

4樓:飢人谷若愚

推薦使用server-mock,可做為靜態伺服器,可適用絕大多數需要mock資料的場景,包括模版資料和ajax資料的mock, 關鍵是用起來極其簡單,還能生成範例供模仿。

1. 安裝

npm install -g server-mock2. 建立範例檔案(可選)

mock init

3. 把當前資料夾作為伺服器目錄

mock start

5樓:Dream Sun

為什麼你需要乙個 mock serverhttps://

6樓:三水清

前幾天看同事聯調資料麻煩,剛寫了個mock server,npm查下moserver,除了mock功能還可以做static server,自帶自動重新整理功能,算是node版f5。npm i -g moserver

7樓:王登武

本地dns改寫網域名稱指向,懶得搭建dns伺服器的話,直接極路由省時省力

網域名稱搞定之後就是mock server的事情了,mock server可選的太多了,懶人直接nodejs都可以,需求複雜的可以使用mockserver,再複雜的自己搭建測試伺服器,外加測試資料庫,妥妥的

測試環境的準備,搭建以及同步維護等問題就是另外一篇才能說完的了,但是基礎設施是基於vagrant或者docker

8樓:DreamPiggy

……如果是唯一的主網域名稱和IP位址對前端影響不大吧?

你訪問的API,本身就是URL中的PATH以後的部分(比如http://www.

foo:80/bar?

id=1

中的/bar以後的東西)…jQuery的話$.ajax({})裡面寫url: '/bar'不就行了…為什麼需要埠號和IP?

不過二級網域名稱的話確實得考慮這個問題,要想真實模擬,可以本地綁個hosts把你的API的二級網域名稱對映到不同的本機埠上跑。

真要呼叫第三方API,也不會存在第三方API繫結在本機IP這種使用場景吧……

9樓:楊柳岸

目前在使用 mock.js 和 koa 結合,主要的不便有:

介面多了之後,檔案難於維護

koa 公升級頻繁,搞得很煩

正在尋求其他方案

10樓:張軒

如果你用的是restful架構,居然沒人說這貨?

pretenderjs/pretender · GitHub 比express輕便誰用誰知道啊

varPHOTOS=,

"42":};

varserver

=new

Pretender

(function

()))

return

[200,,

all]

});this

.get

('/photos/:id'

,function

(request

),JSON

.stringify

(PHOTOS

[request

.params.id

])]});

});啥你不想自己手動弄資料?各種copy&paste累的慌?

我擦,居然還有這麼神奇的乙個庫。

Marak/faker.js · GitHubconsole.log(faker.fake('}, } }'));

// outputs: "Marks, Dean Sr."

這神奇的庫能生成各種資料簡直炫酷

弄完了怎麼結合 proxy tool那麼多整乙個唄emberjs

11樓:

guananddu/idt at idt4none-contextify · GitHub

之前實現了乙個簡易的mock機制,支援各種常見模版引擎及其Ajax的資料Mock,可以試試

一直在用

12樓:

直接叫後端定期build好提交到svn..

然後本地開發個伺服器,配置個虛擬路徑到前端專案...

也可以配多個web埠,導向fis後的前端專案..

13樓:不知道

無須啟動另乙個webserver, 直接在發ajax call的lib中做手腳

如果你用superagent(https://github.com/visionmedia/superagent

) 的話,可以用https://

14樓:阿安

前後端分離的開發模式中,資料 mock 最成熟的做法是搭建乙個本地的 web server 。像 fis 等工具的中就已經自帶 web server 功能。如果不用 fis 可以使用 nginx 自己搭建,也可以使用對前端相對友好的 nodejs server,我自己就寫了乙個,組裡部分同學在用,上手十分容易:

使用 imitator 實現前後端分離開發中的資料模擬與靜態資源對映安·記

至於題主說的 url 問題,其實很好解決。web server 都有路由配置的功能,開發的時候,url 只要寫成和線上位址一致,再通過路由配置把 url 打到需要 mock 的資料就可以了。舉個 imitator 的栗子:

imitator

('/api'

,imitator

.file

('./test/api.json'

));然後前端你的 ajax 可能是這樣:$.

get(

'/api'

,callback

);就搞定了。

15樓:「已登出」

這種做得好的話都可以在前端模擬的, 不需要伺服器,如果是jquery. martinkr/jQuery.ajaxMock · GitHub (這裡ajax的寫法最好是promise寫法, 就很好mock了)

如果用的是rxjs. 直接替換publisher模擬生成資料.

angular.js之類的.

16樓:未曾盡然

1前後端約定mock資料格式規範

2前端依賴mock資料來進行開發,包括測試都基於mock資料3後端產生符合約定規範的mock資料

前端可以配置瀏覽器外掛程式攔截請求重定向到本地靜態資源如谷歌瀏覽器外掛程式fiddler,同理可自己配置nginx或者node

另一種比較簡單的做法就是後端攔截請求,讀取後端mock資料檔案,然後返回。

這樣,前端請求該怎麼寫就這麼寫

如何堅持自學Web前端?

堅持的前提是有動力,能看到結果 建議找個前端學習群或者一起學習的小夥伴,在基本入門的情況下就可以試著仿一些簡單的網頁,慢慢的能看到自己的作品就有了繼續學下去的動力了 NullFeng 堅持不下去就對了,說明不是很適合你,硬要堅持下去只會讓你越來越累,何必呢?換個其它的,只要你感興趣,越堅持越快樂!當...

如何看待 Web 開發構建工具 Vite?

陳隨易 這個問題,我覺得。目前的前端,不僅僅只是某幾個技術層面的問題。更多的是,工程化問題,開發效率問題,後期維護問題。vite只是在技術層面進行了探索,而且還是半隻腳的邁出去的那種。目前的集大成者終究還是webpack。對於大部分中小企業來說,什麼技術其實不重要。最重要的是,如何提高開發效率,減少...

WEB前端是幹什麼的,?

十月 前端是離使用者最近的乙個程式設計師職位。你現在使用的知乎,所看到的所有東西,都是前端工程師負責處理的。你的頁面互動什麼的。前端需要具備的基礎知識其它人已經說的很明白了。前端主要劃分為兩大類場景 面向後台資料操作的 後台管理系統 還可以做一些有意思的小工具,比如 十月iPhone 所有機型引數大...