我尝试使用webhook来获取JSON, 我读到我应该安装ngrok,因为webhooks在本地不起作用,所以我安装了ngrok, 并尝试遵循此小教程:https://medium.com/@derek_dyer/rails-webhooks-local-development-7b7c755d85e3
我创建了路线:
get 'invoice/webhooks'
post 'invoice/webhooks' =>'invoice#webhooks'
还有我的控制器:
def webhooks
render json: response.body, status: 200
end
我也将URL https://ce0d99f7.ngrok.io/invoice/webhooks插入了服务中以接收Webhook
我在终端中运行./ngrok http 3000,并且收到一条消息
POST /invoice/webhooks 403 Forbidden
有人知道该如何解决吗?
答案 0 :(得分:17)
如果在开发中使用rails 6并使用ngrok,则必须在配置/环境中编辑development.rb文件以添加config.hosts << "a0000000.ngrok.io"
,其中a0000000.ngrok.io是ngrok提供的不带https://
的URL ,如果此方法无效,则必须在控制器中添加skip_before_action :verify_authenticity_token
。