[Construct 2與Node.js] #1 - 好用的Auto-reload Server
Node.js是一套可以讓你在本地端運行JS代碼的運行環境,Node.js近年來常被使用於製作app後台,很大程度的取代了PHP在網路技術的角色。本文教你使用Node.js架設一個http伺服器,讓免費版C2輸出的檔案能夠在瀏覽器中順利執行。
=====================
眾所周知的,免費版C2所輸出的檔案是不能夠直接點擊兩次或是用Chrome來開啟執行的。如果你這樣做,將會看到以下的畫面:
這個問題在百度貼吧大概是月經貼...每個月都有新人問這個問題啊...
這個錯誤,是因為C2使用了file://通訊協議來讀取項目資源,而Chrome(以及很多瀏覽器)是不支援本地執行file://協議的。
為什麼瀏覽器不支援file協議呢? 很簡單~ 這是為了保障你的個人資訊安全。
變通的方法,就是真的在本地電腦上架設一個http伺服器,再將C2 H5遊戲放上http伺服器後以網址運行。
可是架設http伺服器對於一般用戶可是難如登天的啊。。所以~~本文教你如何輕輕鬆鬆地使用Node.js第三方模組---simple-autoreload-server來自架http伺服器,保證你用一次就成鐵粉!
好啦~坐穩吧~我們開始囉~
讀者請務必先自行安裝Node.js:
https://nodejs.org/en/
=======================
首先確認電腦已連上網路。接著在Windows下開啟一個主控台程序(cmd),輸入以下程序即可安裝simple-autoreload-server:
npm install -g simple-autoreload-server
程式很小,很快就可安裝完畢。
=======================
接著跳至C2遊戲輸出資料夾,點及任意空白處取消選取焦點,按住<Shift>鍵不放,於空白處點擊滑鼠右鍵,選擇<在此處開啟命令視窗>。
在開啟的主控台中輸入以下指令,即可將C2遊戲資料夾轉換成伺服器根目錄。
autoreload-server
在瀏覽器中運行 http://localhost:8080 即可看到整個完整的目錄夾,點擊index.html就可以運行你的C2遊戲了。
使用autoreload-server的好處有二:
1. 可以讓免費版輸出亦能使用手機運行
2. 伺服器偵測到檔案更新時會自動刷新瀏覽器內頁面
===========================
使用手機運行
上述的localhost站名是指本機的意思,若想從手機或是其他PC連過來,則需要具體以ip位址連接。
請開啟一個新的主控台,輸入以下指令,取得本機ip位址:
ipconfig
以上圖為例,傅老師開啟autoreload-server的這台PC,其ip位址為 192.168.2.13。
192.168開頭的ip是內網ip,所以請將你的手機連至與PC相同的Wifi路由器,方可以此ip位址連接。
=================
本節教大家一個基礎好用的node.js第三方模組功能,希望你會喜歡。
其實傅老師也常常使用autoreload-server來進行內網的檔案分享。我最常做的事情就是在PC上做投影片,再利用autoreload-server開出一個檔案伺服器,從筆電上抓取我的投影片。
下節我們會來介紹更多好用的Node.js功能,並且用更多的花式絕招與Construct 2串接起來!
好用!
真棒!