序文 Vue アプリケーションなどの静的ページを開発する場合、クロスドメインになる可能性のあるインターフェースを呼び出すことがよくあります。その場合、ブラウザはクロスオリジンの問題を報告し、呼び出しを拒否します。 最も簡単な解決策は、ブラウザがセキュリティの問題を無視するように設定し、--disable-web-security を設定することです。ただし、この方法は PC ページの開発には適していますが、モバイル ページには適していません。 解決 リクエストを転送するには Nginx を使用します。ローカル ドメイン インターフェイスを呼び出すクロスドメイン インターフェイスを記述し、これらのインターフェイスを実際の要求アドレスに転送します。 例えば たとえば、Vue アプリケーションを開発しているとします。 オリジナル: デバッグページは次のとおりです: http://192.168.1.100:8080/ 要求されたインターフェースは次のとおりです: http://ni.hao.sao/api/get/info ステップ1: 要求されたインターフェースは次のとおりです: http://192.168.1.100:8080/api/get/info PS: これにより、クロスドメインの問題が解決されます。 ステップ2: Nginx をインストールした後、/usr/local/etc/nginx/ ディレクトリ (Mac の場合) に移動し、nginx.conf ファイルを変更します。 ステップ3: デフォルトのサーバー構成をコメントアウトします。 以下に追加: サーバ{ 聞く 8888; サーバー名 192.168.1.100; 位置 /{ プロキシパス http://192.168.1.100:8080; } 場所 /api{ proxy_pass http://ni.hao.sao/api; } } 保存したら、Nginx を起動します。 PS: Nginx の設定についてはあまり詳しく知る必要はありません。非常に簡単です。 ステップ4: アクセス: http://192.168.1.100:8888/ 終わり。 PS: アクセス ポートは「8888」であることに注意してください。他のドメインにアドレスがある場合は、場所の追加を続行してください。 エラーのデモンストレーション 最初はNginxの設定がよくわからなかったので、次のように設定できると思いました。 サーバ{ 8080を聴く; サーバー名 192.168.1.100; 場所 /api{ proxy_pass http://ni.hao.sao/api; } } これを書いた理由は、これにより Nginx が 8080 のリクエストをリッスンし、一致するリクエストのみを転送できるようになると考えたからです。私が気付いていなかったのは、Nginx をこのように記述した後、ポート 8080 を占有する必要があるということでした。 ポートを占有する必要があるため、同じプロトコルの他のプロセスによって占有することはできず、その結果、開発されたページをポート 8080 で有効にできなくなります。同僚に指摘されて初めてこのことを思い出し、考え方を変えて上記の方法を思いつきました。 要約する 実際、これは開発やデバッグ中だけでなく、実稼働環境でも実行できます。 Nginx を使用してリクエストを転送した後は、展開する静的ページをリクエスト インターフェイスと同じドメインに配置する必要はありません。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: MYSQLは時間(年、月、日)フィールドを変更されていない時間、分、秒に置き換えます。分析例
>>: フロントエンドコンポーネント化の基礎知識を詳しく解説
背景<br />フロントエンドを担当する学生は、ページが多すぎると煩雑になるため、開発プ...
目的: ステーションAをステーションBのセカンダリディレクトリとして扱うのように: http://w...
プレビューアドレス: https://ovsexia.gitee.io/leftfixed/ htm...
問題の説明CSS を使用して上部の固定効果を実現したいと思います。 margin-top と pos...
今日はメニューボタンを作りました。マウスをボタンに移動するすると、ドロップダウンサブメニューが表示さ...
<br />私の仕事で使用しているアノテーションの書き方の基準をまとめました。技術的な内...
データは企業の中核資産であり、企業にとって最も重要なタスクの 1 つです。注意しないと、データが意図...
ページの自動スクロール効果は JavaScript で実現できますが、今日偶然、JS 制御なしでさま...
序文: Vue プロジェクトで現在のマウスの座標を取得するにはどうすればよいでしょうか。ここで共有す...
XAML レイアウトを使用する場合、インターフェイスを Metro 風にするために、一部のボタンでは...
1. トランザクションとは何ですか?データベース トランザクション (略称: トランザクション) は...
セル - 表の内容 セルの余白 (表の余白) (cellpadding) - セルの外側の距離を表し...
さっそく、コードを直接投稿します。具体的なコードは次のとおりです。 <html> <...
3つのパラダイム1NF: フィールドは分離不可能です。 2NF: 主キーがあり、非主キー フィールド...
MySQL 5.7.20 zipインストール、具体的な内容は次のとおりです(1)圧縮パッケージを解凍...