আমার একটি উত্তরযোগ্য টাস্ক রয়েছে যা একটি ওয়েবসাইটকে একটি জেএসওএন প্রতিক্রিয়া পেতে একটি ইউআরআই অনুরোধ করে। নেস্টেড জেএসএন ভেরিয়েবলটি সংজ্ঞায়িত করা হলে, এবং যদি তা না হয় তবে অন্য কিছু করতে আমি জবাবদিহি করতে চাই।
- name: Get JSON from the Interwebs
uri: url="http://whatever.com/jsonresponse" return_content=yes
register: json_response
- name: Write nested JSON variable to disk
copy: content={{json_response.json.nested1.nested2}} dest="/tmp/foo.txt"
নোট করুন যে ignore_errors
কেবল জিনজা টেমপ্লেটের মধ্যে নেস্টেড ডেটা স্ট্রাকচারের অনির্ধারিত মানগুলি পরীক্ষা করার জন্য নয়, কেবলমাত্র টাস্ক কমান্ড ব্যর্থতার জন্য কাজ করে । সুতরাং যদি json_response.json.nested1.nested2
সংজ্ঞায়িত না হয় তবে এই কাজটি ignore_errors=yes
সেট করা সত্ত্বেও ব্যর্থ হবে ।
/tmp/foo.txt
অনুরোধ ব্যর্থ হলে বা অনুরোধটির সঠিক নেস্টেড মানটি সংজ্ঞায়িত না করা থাকলে আমি কীভাবে কিছু ডিফল্ট মান সঞ্চয় করতে এই প্লেবুকটি পাব ?
$key
প্রতিক্রিয়াতে কোনও ক্ষেত্র না থাকলে কী ঘটে - যেমন জিনজারdefault
ফিল্টারটি কার্যকর হতে পারে।