24 lines
449 B
Ruby
24 lines
449 B
Ruby
class WebhooksController < ApplicationController
|
|
skip_forgery_protection
|
|
|
|
before_action :authorize_request
|
|
|
|
def lndhub
|
|
begin
|
|
payload = JSON.parse(request.body.read, symbolize_names: true)
|
|
rescue
|
|
head :unprocessable_entity and return
|
|
end
|
|
|
|
head :ok
|
|
end
|
|
|
|
private
|
|
|
|
def authorize_request
|
|
if !ENV['WEBHOOKS_ALLOWED_IPS'].split(',').include?(request.remote_ip)
|
|
head :forbidden and return
|
|
end
|
|
end
|
|
end
|