私はユーザーから入力を取得し、その入力を変数に割り当ててからAPIに投稿しようとしています。railsコントローラのAPI呼び出しにどのように変数を割り当てますか?
@options = {
:credentials => {
:account_id => "12345",
:api_key => "mysecretapikey123456"
},
:product => "criminal_database",
:data => {
:FirstName => params[:firstName],
:LastName => params[:lastName],
:MiddleName => params[:middleName],
:Address => params[:address],
:City => params[:city],
:State => params[:state],
:Zip => params[:zip],
:County => params[:county],
:DOB => params[:DOB],
:AgeMin => 0,
:AgeMax => 120,
:Limit => 1,
:ExactMatch => "yes"
}
}
@opt = JSON.generate(@options)
@url = 'https://api.imsasllc.com/v3/'
@response = HTTParty.post(@url, body: @opt, :headers => {'Content-Type' => 'application/json' })
@parsed = JSON.parse(@response.body)
#byebug
p @parsed
以上、私はすべてを送信しようとしています。
以下は私が使用している形式です。
<%= form_for(@record_check) do |f| %>
<% if @record_check.errors.any? %>
<div id="error_explanation">
<h2><%= pluralize(@record_check.errors.count, "error") %> prohibited this record_check from being saved:</h2>
<ul>
<% @record_check.errors.full_messages.each do |message| %>
<li><%= message %></li>
<% end %>
</ul>
</div>
<% end %>
<%= f.text_field :firstName, :placeholder => "First Name" %>
<%= f.text_field :lastName, :placeholder => "Last Name" %>
<%= f.text_field :middleName, :placeholder => "Middle Name (optional)" %>
<%= f.text_field :address, :placeholder => "Address (optional)" %>
<%= f.text_field :city, :placeholder => "City (optional)" %>
<%= f.text_field :state, :placeholder => "State (optional)" %>
<%= f.text_field :zip, :placeholder => "Zip Code (optional)" %>
<%= f.text_field :county, :placeholder => "County (optional)" %>
<%= f.date_select :DOB, {order: [:month, :day, :year], prompt: { day: 'Select day', month: 'Select month', year: 'Select year' }, start_year: Date.today.year - 18, end_year: Date.today.year - 100}, {required: true} %>
<div class="actions">
<%= f.submit "Get Background Check", class: "btn-submit" %>
</div>
<% end %>
フォームを送信すると、APIは何も投稿されなかったというエラーを返します。私は困惑している。私は数日間この作業をしています...私のコントローラのメソッドに入力フォームを提出するのはどうですか?あなたのparams内の主な目的が欠落しているよう
フォーム全体を提供できますか?上はフォームの始まり、内側のフィールドだけを示していません。 –
ありがとう、編集を確認してください –
あなたが得る正確なエラーを投稿してください。私は問題を知っていると思う。 –