Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 422(不可处理实体)使用rails的POST_Javascript_Ruby On Rails_Ruby_Ajax_Controller - Fatal编程技术网

Javascript 422(不可处理实体)使用rails的POST

Javascript 422(不可处理实体)使用rails的POST,javascript,ruby-on-rails,ruby,ajax,controller,Javascript,Ruby On Rails,Ruby,Ajax,Controller,几天前我才开始使用RubyonRails。我正在尝试使用ajax将数据从html标记发送到ruby函数 以下是我得到的错误: POST http://localhost:3000/ajax/ounces 422 (Unprocessable Entity) 我使用html按钮onclick属性调用javascript函数: <button class="btn btn-primary" style="width:24%;" type="button" onclick="ounces_fn

几天前我才开始使用RubyonRails。我正在尝试使用ajax将数据从html标记发送到ruby函数

以下是我得到的错误:

POST http://localhost:3000/ajax/ounces 422 (Unprocessable Entity)
我使用html按钮onclick属性调用javascript函数:

<button class="btn btn-primary" style="width:24%;" type="button" onclick="ounces_fn()">Fluid Ounces</button>
这是我的ruby函数:

def ajax_ounces
    numArray = [params["num1"].to_f, params["num2"].to_f, params["num3"].to_f, params["num4"].to_f]
    returnArray = Array.new(4);
    i = 0

    while i < numArray.length do
        returnArray[i] = numArray[i] / 30
        i += 1
    end

    respond_to do |format|
          format.json {render :json => {:result => returnArray}}
    end
end
def ajax\u盎司
numArray=[params[“num1”]。to_f,params[“num2”]。to_f,params[“num3”]。to_f,params[“num4”]。to_f]
returnArray=Array.new(4);
i=0
而我呢
returnArray[i]=numArray[i]/30
i+=1
结束
回应待办事项|格式|
format.json{render:json=>{:result=>returnArray}
结束
结束

我检查了许多不同的网站,但我无法将其中任何一个与我所从事的工作联系起来。我很感激你能给我的任何帮助。谢谢。

由于CSRF令牌,可能会导致此错误

尝试将此行添加到控制器顶部

skip_before_action :verify_authenticity_token

我真不敢相信有那么容易。。谢谢你,先生。你为我节省了很多时间。现在我只需要修复我的ruby函数xD
def ajax_ounces
    numArray = [params["num1"].to_f, params["num2"].to_f, params["num3"].to_f, params["num4"].to_f]
    returnArray = Array.new(4);
    i = 0

    while i < numArray.length do
        returnArray[i] = numArray[i] / 30
        i += 1
    end

    respond_to do |format|
          format.json {render :json => {:result => returnArray}}
    end
end
skip_before_action :verify_authenticity_token