- 數(shù)據(jù)mock支救。
在組建中,通過http模塊調(diào)用數(shù)據(jù)接口拷淘,只需要在www目錄下建立對應的文件搂妻,即可完成數(shù)據(jù)mock。 - 跨域調(diào)試辕棚。
當我們在數(shù)據(jù)聯(lián)調(diào)過程中,開發(fā)模式(ionic serve或者ionic run -l)下必然涉及到接口跨域(本地url為http://localhost:8100),如果要做跨域設置逝嚎,則需要在服務器接口響應配置CORS扁瓢,然而在涉及到cookie傳輸時,CORS配置不能為*补君,必須指定特定的域名引几。這便成了矛盾所在。
我試過通過代理工具charles來對本地url代理到對應作用域下的接口挽铁,然而本地服務器的livereload.js總是代理失敗伟桅。最終通過chrome的啟動參數(shù)--diable-web-security設置來允許直接跨域接口訪問,mac下啟動方式如下:
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --disable-web-security --user-data-dir
最后的-user-data-dir是chrome49以后的版本要求添加的叽掘,否則跨域時無法攜帶cookie楣铁,具體設置方法也可參考chrome瀏覽器的跨域設置——包括版本49前后兩種設置
如果是其他模式,比如發(fā)布了apk到手機上進行體驗更扁,這種情況下并沒有使用本地的server盖腕,而是使用的file協(xié)議,此時并不存在跨域問題浓镜。如果需要在手機上體驗并且需要數(shù)據(jù)mock溃列,則需要建立對應的web服務器,使得數(shù)據(jù)請求能被訪問膛薛,以文件的形式返回听隐。