https://requestb.in
を使用すると、webhookがヘッダ+ JSONボディデータを正しく送信していることがわかります。しかし、サーバーにjson要求を送信すると、jsonを解析する際にエラーが発生します。webhookリクエストのJSONを解析します。
マイコントローラー(身体データを受信することはできません):
class ReceiverController < ApplicationController
skip_before_filter :verify_authenticity_token
def handle_post
puts request.headers['Content-Type']
puts "request:"
puts JSON.parse(request.raw_post)
puts "request2:"
puts JSON.parse(request.body.read)
end
end
エラー出力:
application/json; charset=utf-8
request:
JSON::ParserError (A JSON text must at least contain two octets!):
app/controllers/receiver_controller.rb:69:in `handle_post'
request2:
Completed 500 Internal Server Error in 7ms (ActiveRecord: 0.0ms)
routes.rbを
post "/receive" => 'receiver#handle_post'
? –
@Зелёныйそれは 'JSON.parse(request.raw_post)'の出力です。 'JSON.parse(request.body.read)'の出力を追加しました – Taylor
私のコメントをお読みですか? 'puts request.body.read'の出力を表示します。 –