解決済み: いくつか間違ったことをしましたが、そのすべてがコントローラーのデータ受信に関係していました。データの送信に関して、以下の方法に問題はありませんでした。
1: reportController#create で @report.save を使用していませんでした
2: コントローラーで params[:report] を渡していませんでした
3: "skip_before_filter :verify_authenticity_token" をアプリケーション コントローラーに追加して、ログの警告を停止しました。解決しました。データの挿入に成功しました。
=====元。以下の質問=====
Ruby on Rails データベースに何かを挿入するコマンドを発行するには、外部プログラムが必要です。これによるセキュリティへの影響は理解していますが、このアプリケーションは公開されていないため、実際には問題になりません。
これは私が達成しようとしているワークフローです:
REST クライアント > RAILS > 新しい DB TABLE 行を作成する
例として、私の route.rb ファイルには以下が含まれています。
resources :reports
そのため、これらのルートを使用して CRUD を実行できます。残りのクライアントを正しく動作させることができないようです。
更新: 1 つの RUBY レスト クライアントと curl コマンドを試しましたが、役に立ちませんでした。
require 'rest_client'
require 'json'
hash_to_send = {:test_name => 'Fake Name', :pass_fail => 'pass',:run_id => 1111, :category => 'Fake Category'}
#formulate CURL attempt
myCommand = "curl -H 'Content-Type: application/json' -X POST http://localhost:8889/report.json -d #{hash_to_send.to_json} > deleteme.html"
#execute CURL attempt
`#{myCommand}` # RESULT--> 795: unexpected token at 'test_name:Fake Name'
#Make Ruby rest client attempt
response = RestClient.post( "http://localhost:8889/report.json",
hash_to_send.to_json,
:content_type => :json, :accept => :json
)
#debug info
puts myCommand # Returns --> {"test_name":"Fake Name","pass_fail":"pass","run_id":1111,"category":"Fake Category"}