【问题标题】:Use fetch to pass variable in rails使用 fetch 在 rails 中传递变量
【发布时间】:2020-08-31 02:08:26
【问题描述】:

我正在使用 Reactjs 在 Rails 中创建一个应用程序。我想将输入字段的值作为变量传递给控制器​​,以便我可以在def create 中使用该变量。如何使用 fetch 做到这一点?

【问题讨论】:

    标签: ruby-on-rails reactjs


    【解决方案1】:

    使用 fetch 的 POST 请求到您的 :create 方法的 API 后端端点。确保在 POST 时将变量包含在参数负载中。

    然后在你的控制器中,你可以通过params访问你的变量

    编辑:

    来自使用 POST (https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch) 的 fetch api 文档示例

    async function postData(url = '', data = {}) {
      const response = await fetch(url, {
        method: 'POST',
        headers: {
          'Content-Type': 'application/json'
        },
        body: JSON.stringify(data)
      });
      return response.json();
    }
    
    postData('/your/api/endpoint', { data: 'yourData' }).then(res=> { console.log(res) });
    

    然后在您的控制器中,通过参数访问{ data: 'yourData' },如下所示:

    def create
      @data = params[:data]
      // Do what you want with @data here
    end
    

    最好先将参数列入白名单,然后再在控制器中使用它们。

    【讨论】:

    • 你能举个例子吗
    猜你喜欢
    • 1970-01-01
    • 2021-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多