Chromeのローカルサポートを設定するAJAX要求
何の問題ですか
WEB開発の過程で、簡単なデモを書くことが多いです。完全なプロジェクトを開発するわけではありません。
•新規フォルダ
•新規作成に必要なファイル
•Sublime(または他のエディタ)でDEMOのコードを完了します。
•HTMLファイルをダブルクリックして、直接ブラウザでプレゼンテーションを実行します。
この時点でDemoにAJAX操作があると、ブラウザがエラーを報告します。
XMLHttp Request cannot loadfile:///Users/iceStone/Documents/Learning/angular/demo/angular-moviecat/movie/view.html. Cross orgin requests are only supported for protocol schemes:http、data、chrome、chrome-extension、chrome-extension、chrome-extension-resource.
その理由は簡単です。ブラウザのセキュリティポリシーがfileプロトコルのアクセスアプリケーションを決定しました。XMLHttpRequestオブジェクトを使用できなくなりました。エラーメッセージにもよく説明されています。
Cross orgin requests are only supported for protocol schemes:http、data、chrome、chrome-extension、chrome-extension、chrome-extension-resource.
クロスドメイン要求は契約のみサポートします。http、data、chrome、chrome-extension、https、chrome-extension-reource
いくつかのブラウザでは、Firefoxブラウザ、すなわちFilefoxがfileプロトコルのAJAX要求をサポートするように、このような操作が許可されています。
解決策
個人的に一番好きなChromeとして、強くて、何も言いませんでした。思いもよらなかったです。ほとんどできなかったので、応援しなければなりません。
Windows:
•Chromeのショートカット属性を設定し、「ターゲット」の後ろにCallow-file-access-from-filesを追加して、前にスペースがあることに注意して、Chromeを再開すればいいです。
Mac:
•ブラウザを端末で開くしかない:端末を開けて、次のコマンドを入力してください。open-a「Google Chrome」Calts Cdisable-web-securityを入力して、安全アクセスを遮断できます。
補足説明
長期的には、HTTPを通じてあなたのアプリケーションにアクセスする必要があります。HTTPサーバのソフトウェアを設定する必要があります。しかし、入門したばかりの学生にとっては、HTTPサーバ(例えば、Apache、IISなど)を使うのが煩雑で、見ていても身が引きません。
•IDEを使っている学生には何も言いません。Web開発用のIDEはhttpサーバを内蔵しています。単独で配置する必要はありません。
•ライト級エディタが好きな学生にとって、例えばSublime TextはデフォルトでHTTPサーバが内蔵されていません。
次に、SublimeのプラグインSublime Serverを紹介します。このプラグインは静止ファイルHTTPサーバを提供します。具体的な使い方は以下の通りです。
•Package Control(Sublimeのプラグイン管理ツール)をインストールして、自分でGoogleをインストールしません。
•Command+Shift+PまたはCtrl+Shift+Pはコマンドパネルを開いて、Package Controlを入力します。Install Package
•ちょっと待ってください。(この時はプラグインプロバイダのサーバーに接続します。遅くて、壁を背負う可能性があります。)SublimeServerを検索します。
•インストールが完了したらTool→SublimeServer→Start SublimeServerを通過します。
•必ずフォルダを開く方法でSublimeを使用しなければなりません。Sublime Serverは正常に使用できません。
•HTMLファイルを開き、右ボタンメニューからView in SublimeServerを選択すると、HTTPでブラウザからこのファイルにアクセスできます。
•このオプションが灰色の場合、SublimeServerが起動されていないということです。Tool→SublimeServer→Start Sublime Server
ここまでです。SublimeでHTTPサーバを使うことができます。
起こり得る問題
Start Sublime Serverがポイントできない場合、現在8080ポートが占有されている可能性があります。
解決方法はプロファイルを開いてポートを他のポートに変更することです。
以下は私の設定です。
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。
WEB開発の過程で、簡単なデモを書くことが多いです。完全なプロジェクトを開発するわけではありません。
•新規フォルダ
•新規作成に必要なファイル
•Sublime(または他のエディタ)でDEMOのコードを完了します。
•HTMLファイルをダブルクリックして、直接ブラウザでプレゼンテーションを実行します。
この時点でDemoにAJAX操作があると、ブラウザがエラーを報告します。
XMLHttp Request cannot loadfile:///Users/iceStone/Documents/Learning/angular/demo/angular-moviecat/movie/view.html. Cross orgin requests are only supported for protocol schemes:http、data、chrome、chrome-extension、chrome-extension、chrome-extension-resource.
その理由は簡単です。ブラウザのセキュリティポリシーがfileプロトコルのアクセスアプリケーションを決定しました。XMLHttpRequestオブジェクトを使用できなくなりました。エラーメッセージにもよく説明されています。
Cross orgin requests are only supported for protocol schemes:http、data、chrome、chrome-extension、chrome-extension、chrome-extension-resource.
クロスドメイン要求は契約のみサポートします。http、data、chrome、chrome-extension、https、chrome-extension-reource
いくつかのブラウザでは、Firefoxブラウザ、すなわちFilefoxがfileプロトコルのAJAX要求をサポートするように、このような操作が許可されています。
解決策
個人的に一番好きなChromeとして、強くて、何も言いませんでした。思いもよらなかったです。ほとんどできなかったので、応援しなければなりません。
Windows:
•Chromeのショートカット属性を設定し、「ターゲット」の後ろにCallow-file-access-from-filesを追加して、前にスペースがあることに注意して、Chromeを再開すればいいです。
Mac:
•ブラウザを端末で開くしかない:端末を開けて、次のコマンドを入力してください。open-a「Google Chrome」Calts Cdisable-web-securityを入力して、安全アクセスを遮断できます。
補足説明
長期的には、HTTPを通じてあなたのアプリケーションにアクセスする必要があります。HTTPサーバのソフトウェアを設定する必要があります。しかし、入門したばかりの学生にとっては、HTTPサーバ(例えば、Apache、IISなど)を使うのが煩雑で、見ていても身が引きません。
•IDEを使っている学生には何も言いません。Web開発用のIDEはhttpサーバを内蔵しています。単独で配置する必要はありません。
•ライト級エディタが好きな学生にとって、例えばSublime TextはデフォルトでHTTPサーバが内蔵されていません。
次に、SublimeのプラグインSublime Serverを紹介します。このプラグインは静止ファイルHTTPサーバを提供します。具体的な使い方は以下の通りです。
•Package Control(Sublimeのプラグイン管理ツール)をインストールして、自分でGoogleをインストールしません。
•Command+Shift+PまたはCtrl+Shift+Pはコマンドパネルを開いて、Package Controlを入力します。Install Package
•ちょっと待ってください。(この時はプラグインプロバイダのサーバーに接続します。遅くて、壁を背負う可能性があります。)SublimeServerを検索します。
•インストールが完了したらTool→SublimeServer→Start SublimeServerを通過します。
•必ずフォルダを開く方法でSublimeを使用しなければなりません。Sublime Serverは正常に使用できません。
•HTMLファイルを開き、右ボタンメニューからView in SublimeServerを選択すると、HTTPでブラウザからこのファイルにアクセスできます。
•このオプションが灰色の場合、SublimeServerが起動されていないということです。Tool→SublimeServer→Start Sublime Server
ここまでです。SublimeでHTTPサーバを使うことができます。
起こり得る問題
Start Sublime Serverがポイントできない場合、現在8080ポートが占有されている可能性があります。
解決方法はプロファイルを開いてポートを他のポートに変更することです。
以下は私の設定です。
{
"attempts": 5,
"autorun": false, // Sublime SublimeServer
"defaultExtension": ".html",
"interval": 500,
"mimetypes":
{
"": "application/octet-stream",
".c": "text/plain",
".h": "text/plain",
".py": "text/plain"
},
"port": 2016 //
}
もちろん他のエディタにも同様のプラグインがあります。 以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。