[英]AJAX Request POST data to rails controller gives 404
I want to post data to a rails controller via an AJAX request 我想通过AJAX请求将数据发布到Rails控制器
My route: get "pki_login/authenticate" => "pki_logins#authenticate"
我的路线:
get "pki_login/authenticate" => "pki_logins#authenticate"
The JS: JS:
$.ajax({
type: 'POST',
url: '/pki_login/authenticate',
dataType: 'json',
contentType: "application/json; charset=utf-8",
success: function(data) {
alert("Successful");
},
data: passcode
});
then inside pki_logins_controller.rb
i have: 然后在
pki_logins_controller.rb
内部,我有:
def authenticate
puts params[:passcode]
end
the authenticate.html.erb
file just contains a h3
tag. authenticate.html.erb
文件仅包含一个h3
标签。
I can visit /pki_login/authenticate and it works, but when accessing via AJAX I get a 404 so I don't even know if the POST works either 我可以访问/ pki_login / authenticate,它可以工作,但是通过AJAX访问时,我得到了404,所以我什至不知道POST是否可以工作
You're defining a get
route but making POST
request. 您正在定义一条
get
路线,但发出POST
请求。
Try: 尝试:
$.ajax({
type: 'GET',
url: '/pki_login/authenticate',
dataType: 'json',
contentType: "application/json; charset=utf-8",
success: function(data) {
alert("Successful");
},
data: passcode
});
Or change the route to post
and use post
ajax request as: 或更改
post
路线,并将post
ajax请求用作:
# config/routes.rb
post "pki_login/authenticate" => "pki_logins#authenticate"
Then the ajax call: 然后,ajax调用:
$.ajax({
type: 'POST',
url: '/pki_login/authenticate',
dataType: 'json',
contentType: "application/json; charset=utf-8",
success: function(data) {
alert("Successful");
},
data: passcode
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.