0
私はこのAJAX POSTリクエストを自分の反応コンポーネントで配線して、rails apiコントローラと通信しようとしています。コンソールに404エラーが記録されていて、私はそれを打つことができません。React/Rails AJAX POSTリクエストが返される404
は/ SRC /ページ/ HomeIndex.js
getCompare() {
$.ajax({
url: '/api/sources/compare',
type: 'POST',
data: {value: this.state.inputValue, from: this.state.compareFrom, to: this.state.compareTo },
contentType: 'application/json'
})
}
コントローラ/ API/sources_controller.rb
def compare
binding.pry
end
設定/ルート
post '/api/sources/compare', to: 'api/sources#compare'
namespace :api do
resources :sources, only: [:index, :compare]
end
すくいルート
api_sources_compare POST /api/sources/compare(.:format) api/sources#compare
を反応させます
更新
私はすべて同じ結果に... ...いくつかの順列でルートを更新
namespace :api do
resources :sources, only: [:index] do
collection do
post :compare
end
end
end
namespace :api do
resources :sources, only: [:index, :compare] do
collection do
post :compare
end
end
end
namespace :api do
resources :sources, only: [:index] do
collection do
resources :compare, only: [:compare]
end
end
end
namespace :api do
resources :sources do
post :compare
end
end
を試してみました。
をあなたのレールのコンソール・エラー・ログを投稿することができますか? – mrlew
レールのコンソールエラーが表示されません。 ajax呼び出しは決して軌道に達しません。反応してコンソールに404を返します。 –
したがって、要求は無効なルートを持つレールサーバーに到達していませんか?あなたのネットワークタブ(devのツール)を確認し、どのURLが送信されているかを確認できますか? – mrlew