2017-11-22 19 views
1

私はReactで自分のアプリケーションをビルドしました。そしてwebpack-dev-serverを通して実稼働ビルドでテストしたところ、APIを呼び出すことができませんでした。 私はAXIOSを通じてリクエストしています。React JS webpack-dev-server apiを呼び出すことができません

次のエラーがGETリクエストのために発生します。

はPOSTリクエストについてhttp://localhost:8080/api/web/api/get-logged-navbar 404(見つかりません)

をGET、それがアクションをトリガーしません。

リクエストに正しいパスを使用していますが。

マイアプリの重要なフォルダ

は、次のような構成されています

  • 公共
  • SRC(コンポーネントとアクション)
  • (bundle.jsはここにあるファイルだけでなく、他のスタイルとスクリプトの資産を構築しました)
  • API(APIコードはここにある:Yii2)

WebPACKのコンフィグ:

var webpack = require('webpack'); 
var path = require('path'); 

var BUILD_DIR = path.resolve(__dirname, 'public'); 
var APP_DIR = path.resolve(__dirname, 'src'); 

var config = { 
    entry: APP_DIR, 
    output: { 
    path: BUILD_DIR, 
    filename: 'bundle.js' 
    }, 
    module: { 
    loaders: [ 
     { 
     test: /\.jsx?$/, 
     include: APP_DIR, 
     loader: 'babel-loader', 
     }, 
     { 
     test: /\.css$/, 
     loaders: ["style-loader","css-loader"] 
     }, 
    ] 
    } 
}; 

module.exports = config; 

プロキシを設定してAPIを別のサーバーポートに配置する必要はありますか?

答えて

0

あなたが言っていることを言っているとすれば、はい、おそらくwebpack-dev-serverのproxy optionがYii2バックエンドにAPIリクエストを転送する必要があります。 APIサーバーがリッスンしているポートを確認し、そのページの例のように/apiをそのポートにプロキシします。

0

React/WebpackとAxiosを使用してopenweather.orgへのAPI呼び出しを作成した天気アプリを作成しましたが、プロキシが必要ではないと思います。 Axiosに渡すURLを調べる必要があります。あなたのコードを見ることができなければ、さらなる提案をするのは難しいでしょう。

+0

開発者環境のAxiosにURLを渡すと、すべて正常に動作します。運用環境になったときにだけ、エラーが表示されます。 –

関連する問題