diff options
Diffstat (limited to 'app/controllers/api')
-rw-r--r-- | app/controllers/api/salmon_controller.rb | 14 | ||||
-rw-r--r-- | app/controllers/api/subscriptions_controller.rb | 5 |
2 files changed, 11 insertions, 8 deletions
diff --git a/app/controllers/api/salmon_controller.rb b/app/controllers/api/salmon_controller.rb index a7872d542..7fc5e548d 100644 --- a/app/controllers/api/salmon_controller.rb +++ b/app/controllers/api/salmon_controller.rb @@ -5,13 +5,13 @@ class Api::SalmonController < ApiController respond_to :txt def update - body = request.body.read + payload = request.body.read - if body.nil? - head 200 - else - SalmonWorker.perform_async(@account.id, body.force_encoding('UTF-8')) + if !payload.nil? && verify?(payload) + SalmonWorker.perform_async(@account.id, payload.force_encoding('UTF-8')) head 201 + else + head 202 end end @@ -20,4 +20,8 @@ class Api::SalmonController < ApiController def set_account @account = Account.find(params[:id]) end + + def verify?(payload) + VerifySalmonService.new.call(payload) + end end diff --git a/app/controllers/api/subscriptions_controller.rb b/app/controllers/api/subscriptions_controller.rb index 51c476436..135a5632e 100644 --- a/app/controllers/api/subscriptions_controller.rb +++ b/app/controllers/api/subscriptions_controller.rb @@ -19,10 +19,9 @@ class Api::SubscriptionsController < ApiController if subscription.verify(body, request.headers['HTTP_X_HUB_SIGNATURE']) ProcessingWorker.perform_async(@account.id, body.force_encoding('UTF-8')) - head 201 - else - head 202 end + + head 200 end private |