[英]React/Rails AJAX POST request returns 404
I'm trying to wire up this AJAX POST request in my react component to communicate with my rails api controller. 我正在尝试在react组件中连接此AJAX POST请求,以与Rails api控制器进行通信。 The console logs a 404 error and I can't seem to hit the pry. 控制台记录404错误,我似乎无法进行撬动。
getCompare() {
$.ajax({
url: '/api/sources/compare',
type: 'POST',
data: {value: this.state.inputValue, from: this.state.compareFrom, to: this.state.compareTo },
contentType: 'application/json'
})
}
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
I tried updating the routes with several permutations... 我尝试用几个排列更新路线...
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
...all with the same outcome. ...所有结果相同。
You can solve this by stringifying your AJAX payload, as follows: 您可以通过对AJAX有效负载进行字符串化来解决此问题,如下所示:
getCompare() { let data = JSON.stringify({value: this.state.inputValue, from: this.state.compareFrom, to: this.state.compareTo }) $.ajax({ url: '/api/sources/compare', type: 'POST', data: data, contentType: 'application/json' }) }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.