鍍金池/ 問(wèn)答/網(wǎng)絡(luò)安全  HTML/ [解決]mock.js無(wú)法攔截小程序請(qǐng)求

[解決]mock.js無(wú)法攔截小程序請(qǐng)求

業(yè)務(wù)背景

前后端分離開(kāi)發(fā)
想讓mock.js攔截我的請(qǐng)求
然后返回測(cè)試數(shù)據(jù)
等后端寫(xiě)完接口后,再把mock.js去掉

業(yè)務(wù)代碼

 const Mock = require('mockjs');
 Mock.mock('http://www.23.com', {
            'list|10': '冉娃娃,'
          });
          wx.request({
            url: 'http://www.23.com',
            complete (res) {
              console.log(res);
            }
          });

遇到的麻煩

  • 在小程序里面能夠正常生成mock的模板數(shù)據(jù)
  • 但是發(fā)起的請(qǐng)求沒(méi)有被攔截,而是直接請(qǐng)求到www.23.com

問(wèn)題

  • 難道小程序不是基于XHR發(fā)起的請(qǐng)求么?怎么就攔截不了呢,有沒(méi)有什么辦法可以讓mock.js攔截小程序請(qǐng)求呢
  • 或者除了mock.js,有沒(méi)有其他工具可以實(shí)現(xiàn)類(lèi)似功能的?同時(shí)支持各種平臺(tái)(小程序,網(wǎng)頁(yè)等等)
回答
編輯回答
玩控

確實(shí)是不可以,小程序不是瀏覽器環(huán)境。
request不是XHR也不是ajax。
又一種可行辦法就是在response返回內(nèi)容時(shí),用mockjs,根據(jù)返回的內(nèi)容再去mock出數(shù)據(jù),再retrun出去。

題外話(huà):
個(gè)人感覺(jué)官方的request寫(xiě)法比較繁瑣,所以我用fly組件來(lái)替換了request,有興趣的可以了解下。
小程序開(kāi)發(fā)之一(使用fly進(jìn)行http封裝)

2018年6月2日 17:31
編輯回答
焚音

自己?jiǎn)?dòng)一個(gè)json-server服務(wù)就可以了

是node的模塊

2018年9月6日 15:17