Yük haritalama ve Shopify Flow değişkenleri
Webhook yükündeki dört alanı nokta yollarıyla Shopify Flow değişkenlerine eşleyin; iç içe değerler, diziler ve eksik alan hataları açıklanıyor.
Shopify Flow’un tetikleyici alanları düz metin dizeleridir. Veri yükünüz ise muhtemelen öyle değildir. Eşleme, gelen bir isteğin iş akışınızın ihtiyaç duyduğu kısımlarını seçme işlemidir.
Dört alan
Her webhook, Shopify Flow’a dört alan sunar: fieldOne, fieldTwo, fieldThree, fieldFour. “Gelişmiş Ayarlar” bölümünde, her birini yükünüzdeki bir anahtara yönlendirin.
Aşağıdaki istek gövdesi göz önüne alındığında:


{
"orderId": "1001",
"customer": { "email": "someone@example.com", "name": "Alex" },
"note": "gift wrap"
}| Alan | Şuraya eşle | Shopify Flow’a ulaşan değer |
|---|---|---|
fieldOne |
orderId |
1001 |
fieldTwo |
customer.email |
someone@example.com |
fieldThree |
customer.name |
Alex |
fieldFour |
note |
gift wrap |
İç içe geçmiş değerlerde nokta yol kullanılır (customer.email). Dizi elemanlarında ise indeks kullanılır (items.0.sku).
Shopify Flow'da bunlara {{fieldOne}}, {{fieldTwo}} vb. şeklinde başvurursunuz.
Nesneler ve diziler
Eşleştirilen bir değerin kendisi bir nesne veya dizi ise, bunu otomatik olarak bir JSON dizesine dönüştürürüz; çünkü Shopify Flow değişkenleri yapıları barındıramaz. Yukarıdaki örnekten fieldOne'ı customer'a eşleştirdiğimizde Shopify Flow'da şu sonuç ortaya çıkar:
{"email":"someone@example.com","name":"Alex"}Bu parçalara tekrar ihtiyacınız olduğunda, bunları bir Shopify Flow Run Code eyleminde işleyin.
Dört alan yetmediğinde
Dört adet adlandırılmış alan, entegrasyonların çoğunu kapsar. Kapsamadıkları durumlarda, Gelişmiş Ayarlar altında bulunan ve varsayılan olarak kapalı olan üç adet isteğe bağlı anahtar mevcuttur:
| Ortam | Shopify Flow’a gelenler | Shopify Flow'daki alan |
|---|---|---|
| Özel İstek Gövdesi'ne İzin Ver | Her türlü vücut tipini, katı bir doğrulama süreci olmaksızın kabul eder | - |
| Tüm vücudu kullanın | İstek gövdesinin tamamı bir JSON dizesi olarak | rawBody |
| İstek başlıklarını ekle | İsteğin başlıkları, anahtar/değer listesi olarak | requestHeaders |
| Sorgu parametrelerini ekle | Anahtar/değer listesi olarak URL sorgu dizesi | queryParams |
requestHeaders ve queryParams, liste olarak gelir - “Kodu Çalıştır” eyleminde requestHeaders.items öğelerini tek tek inceleyin; burada her bir giriş { key, value } biçimindedir.
50 KB’nin altında tutun
Shopify Flow, her tetikleyici çalıştırmasını 50 KB ile sınırlandırır. Göndereceğimiz yükün tam boyutunu ölçer ve daha büyük olanları payload_too_large ile önceden reddediyoruz; böylece iş akışının daha sonra başarısız olması yerine net bir hata mesajı alırsınız.
Eğer hata alırsanız, daha küçük bir veri gövdesi gönderin ya da Tüm gövdeyi kullan / İstek başlıklarını dahil et / Sorgu parametrelerini dahil et seçeneklerini devre dışı bırakın - genellikle bu ayarlar hataya neden olur.
Başlıklar ve sorgular her zaman kaydedilir
Opt-in anahtarları yalnızca **Shopify Flow’a **iletilenleri kontrol eder. Çağırma geçmişi her zaman başlıkları ve sorgu dizesini (hassas değerler maskelenmiş olarak) kaydeder; böylece, her şeyi iş akışınıza göndermeden bir isteğin hata ayıklamasını yapabilirsiniz.
