フロントエンドとバックエンドを分離し、nginxを使用してクロスドメインの問題を解決する フロントエンド: vue.js+nodejs+webpack 舞台裏: SpringBoot リバースプロキシサーバー: nginx アイデア: フロントエンド コードをパッケージ化し、nginx が静的リソースを指すようにし、nginx がバックグラウンド リクエストを転送します。 1. フロントエンドコードをパッケージ化します。 npm 実行ビルド dist フォルダーが生成されます。 index.html ファイルと静的フォルダーが含まれています。パスは、例としてローカルの場所に基づいています。 /ユーザー/xxx/ideaProjects/webtest/dist 2. 開く /usr/local/etc/nginx ディレクトリの nginx.conf ファイルに、サーバーに次の内容を追加します。 listen 80; #元の8080、競合を避けるため80に変更 server_name ローカルホスト; #文字セット koi8-r; #access_log ログ/host.access.log メイン; 位置 / { ルート /Users/xxx/ideaProjects/webtest/dist; インデックス index.html; # これは、Vue、Angular、React が H5 の履歴を使用するときに書き換えの問題を処理するために使用されます。if (!-e $request_filename) { 最後に ^(.*) /index.html を書き換えます。 壊す; } } #プロキシサーバーインターフェースの場所 /api/ { proxy_pass http://localhost:8080/;# プロキシインターフェースアドレス} テスト フロントエンドはリクエスト http://localhost/test を送信し、vue-router はそれを http://localhost/api/demo/1 にリダイレクトし、実際のアクセスは http://localhost:8080/demo/1 になります。 バックエンドに直接リクエストを送信します。http://localhost/api/demo/1 にアクセスします。実際のアクセスは次のようになります: http://localhost:8080/demo/1 コンテンツ拡張の考え方: 1)。 場所 /api/ { proxy_pass http://localhost:8080/;# プロキシインターフェースアドレス} プロキシインターフェースのアドレスは 8080 までしか到達しないので、バックグラウンドプロジェクトの名前が自動的に追加されるのでしょうか? ? ? たとえば、インターフェースは http://148.70.110.87:8080/プロジェクト名/メソッド名です。 。 。 2) リクエストは .js で行われます。Nginx は上記のように設定されていますが、リクエストは http://148.70.110.87/api/index2 404 (Not Found) で失敗します。 axios.post('/api/index2') .then( (レスポンス) => { console.log(応答); }) .catch( (エラー)=> { コンソール.log(エラー); }); 3). 3 番目のステップであるテストがよくわかりません。関連するコードを提供していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: 今日と昨日の 0:00 タイムスタンプを取得する MySQL の例
目次JSONとはなぜこの技術なのでしょうか? JSONの使い方- データ形式- メモ- JSには2つ...
この記事では、参考までに、Baidu Mapsを使用して都市の位置特定を実現するVueの具体的なコー...
最初は悲しい気持ちになりました。スクリーンショットは以下の通りです。 少し苦労しましたが、解決策は次...
目次【効果】 【実施方法】 【効果】 【実施方法】 <テンプレート> <div i...
取引トランザクションはビジネス ロジックの基本単位です。各トランザクションは一連の SQL ステート...
Docker を使用して Angular プロジェクトをデプロイする方法は 2 つあります。1 つは...
成果を達成する 実装コードhtml <div class="wrap"&g...
概要ボリュームは、さまざまなストレージ リソースを抽象化および仮想化したものです。ストレージ リソー...
JavaScriptコントロールを使用したくない場合は、次の方法を試してください。 Safariブラ...
重要なデータはバックアップする必要があり、リアルタイムでバックアップする必要があります。そうしないと...
目次現象根本原因分析getLastPacketReceivedTimeMs() メソッドの呼び出し時...
RFC793 ドキュメントの SYN フラグを持つプロセス パケットはデータを伝送できません。つま...
この記事では、シンプルなカルーセル効果を実現するためのjsの具体的なコードを参考までに紹介します。具...
目次1. mixin の使い方は? 2. ミックスイン使用時の注意2.1. ミックスイン オブジェク...
目次1. カスタムルーティング2. タブナビゲーション3. データの返却要約する1. カスタムルーテ...