首页 > 解决方案 > 处理由 javascript 发出的 JSON 字符串

问题描述

以下

<script type="text/javascript">
  [...]
if (result) {
  console.log(result)
  document.getElementById('result').textContent = result.text
let formData = new FormData();
let CodeParams = {
  code_data: result.text,
  section_id:  <%= @section.id %>
};
formData.append("code_json_data", JSON.stringify(CodeParams));
Rails.ajax({
  url: "section_update",
  type: "post",
  data: formData
});

正在提交

Parameters: {"code_json_data"=>"{\"code_data\":\"20200720T131435362700020352008405ced4b190f5c2ccc0d771e76349ff31d2d2caaabcbe0dd72ead2346a46bb7c2\",\"section_id\":19}"}

到 Rails 控制器。但是控制器无法解析数据:

@result = JSON.parse(params)  [or 'parameters']

返回错误:

TypeError (no implicit conversion of ActionController::Parameters into String):

这里有什么错误?

标签: javascriptruby-on-rails

解决方案


推荐阅读