遇到問題就來解決它,但常常是發現問題的人被解決掉了 。

在開發網頁時常常需要ajax請求,但在本地端(為開發方便不使用server)就會遇到“Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.”這個問題,本文分享如何利用sublime server解決該問題。

方法一:變更Chrome配置

  • Windows: 設置chrome.exe的屬性,在目標(target)後方加上“–allow-file-access-from-files”,重啟Chrome就可以。
  • Mac: 打開terminal,輸入“open -a “Google Chrome” –args –disable-web-security”,重啟Chrome即可。

方法二:在Sublime Text中配置http servert插件

這個方法比較一勞永逸,比起配置Apache、IIS等服務器也相對較不繁瑣。

Sublime Server官方文件:https://packagecontrol.io/packages/SublimeServer

Sublime Text Package

首先我們要到
Package Control -> Install Package
搜尋SublimeServer並安裝。

Sublime Server Settings

再來需要做設定,如果你需要不同的port的話。
Tools -> SublimeServer -> Settings…
可以對一些參數作客一些參數做客製化修改,像是port可以改成你需要的。

接著啟動SublimeServer,
Tools -> SublimeServer -> Start SublimeServer

再來要特別注意,你的html專案要用以下方式在Sublime中開啟,資料夾才能被服務器讀取到,
Project -> Add Folder to Project…
選取你的專案資料夾。

如此一來在瀏覽器輸入http://localhost:8080/,
就能看到你所有的本地專案資料夾,
點選後會到你專案的頁面,就能成功實現該頁面的ajax請求了,

然後,

就可以開始debug了…

最後修改日期: 2021-03-31

留言

撰寫回覆或留言

發佈留言必須填寫的電子郵件地址不會公開。