بازآفرینی shopify webhooks – انجمن DEV

Summarize this content to 400 words in Persian Lang
هنگام توسعه برنامه های سفارشی Shopify، من معمولا از ngrok به عنوان یک پروکسی معکوس برای ادغام وب هوک ها استفاده می کنم. از آنجایی که من همیشه از طرح خدمات رایگان Ngrok استفاده می کنم، آدرس URL همیشه تغییر می کند. در اینجا نمونه URL Ngrok ایجاد شده هنگام اجرا است
ngrok http 3000
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
نقطه پایانی ایجاد شدhttps://73d3-2001-448a-3032-c93e-bc56-f800-e58d-8a98.ngrok-free.app
وقتی زدیم ctrl+c و دستور را دوباره اجرا کنید، یک URL جدید متفاوت دریافت می کنیم.
بنابراین کاری که من انجام دادم این بود که فقط آن را تغییر دادم .env فایل پروژه Rails من، به کنسول بروید و وب هوک های Shopify را دوباره ایجاد کنید.
bundle exec rails c
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
Shop.first.recreate_webhooks!
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
و در اینجا کد برای recreate_webhooks!
# app/models/shop.rb
def recreate_webhooks!
ShopifyAPI::Webhook.all.each do |webhook|
webhook.destroy
end
ShopifyApp.configuration.webhooks.each do |item|
webhook = ShopifyAPI::Webhook.new(item)
if webhook.save
puts “webhook #{item} created.”
else
puts “webhook #{item} failed.”
end
end
end
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
بنابراین هر بار که نیاز به بازسازی وب هوک دارید، فقط می توانید این روش را از طریق آن اجرا کنید rails console.
هنگام توسعه برنامه های سفارشی Shopify، من معمولا از ngrok به عنوان یک پروکسی معکوس برای ادغام وب هوک ها استفاده می کنم. از آنجایی که من همیشه از طرح خدمات رایگان Ngrok استفاده می کنم، آدرس URL همیشه تغییر می کند. در اینجا نمونه URL Ngrok ایجاد شده هنگام اجرا است
ngrok http 3000
نقطه پایانی ایجاد شدhttps://73d3-2001-448a-3032-c93e-bc56-f800-e58d-8a98.ngrok-free.app
وقتی زدیم ctrl+c
و دستور را دوباره اجرا کنید، یک URL جدید متفاوت دریافت می کنیم.
بنابراین کاری که من انجام دادم این بود که فقط آن را تغییر دادم .env
فایل پروژه Rails من، به کنسول بروید و وب هوک های Shopify را دوباره ایجاد کنید.
bundle exec rails c
Shop.first.recreate_webhooks!
و در اینجا کد برای recreate_webhooks!
# app/models/shop.rb
def recreate_webhooks!
ShopifyAPI::Webhook.all.each do |webhook|
webhook.destroy
end
ShopifyApp.configuration.webhooks.each do |item|
webhook = ShopifyAPI::Webhook.new(item)
if webhook.save
puts "webhook #{item} created."
else
puts "webhook #{item} failed."
end
end
end
بنابراین هر بار که نیاز به بازسازی وب هوک دارید، فقط می توانید این روش را از طریق آن اجرا کنید rails console
.