यह अध्याय Go Iris framework को पेश करता है और स्थायी फ़ाइलों को कैसे संभाला जाए। कभी-कभी प्रोजेक्ट में कुछ स्थायी फ़ाइलें होती हैं जिन्हें उपयोगकर्ता द्वारा सीधे पहुंचने की आवश्यकता होती है। इसे कैसे सेटअप किया जाए?

Iris स्थायी फ़ाइलें प्रकट करता है

func main() {
    app := iris.New()
	// पृष्ठ प्रतीक सेट करें
    app.Favicon("./resources/favicon.ico")
	// स्थायी फ़ाइलों के लिए पथ सेट करें और URL रूट को बाँधें
    app.HandleDir("/assets", iris.Dir("./assets"))

    app.Listen(":8080")
}

HandleDir मेथड एक तीसरा वैकल्पिक पैरामीटर DirOptions को स्वीकार करता है:

type DirOptions struct {
    // डिफ़ॉल्ट "/index.html" है। अगर अनुरोध पथ **/*/$IndexName से समाप्त होता है, तो यह **/*(/) पर निर्देशित करता है,
    // जिससे यह एक अन्य हैंडलर की or by the framework मुफ्त आपके द्वारा पंजीकृत किया गया एक और हैंडलर की सेवा होती है
    // अगर अंत-विकसितकर्ता ने इसे मैन्युअल रूप से संभाला नहीं है।
    IndexName string
    // PushTargets फ़ाइल नामों को (मान नकिले गए) सेव करने के लिए बिना अतिरिक्त ग्राहक अनुरोध (HTTP/2 Push) के (नकल के कुंज से बिना) सेव करने के लिए जब विशिष्ट अनुरोध पथ (मैप की कुंज बिना प्रीफ़िक्स) पर अनुरोधित पथ (मैप की कुंज बिना प्रीफ़िक्स)खो नहीं है (किसी `IndexFile`) या कब यह करना चाहिए.
// PushTargetsRegexp `PushTargets` की भांति है परंतु इसमें एक संबंधित रेजेक्ट मान्य है जो इससे तुलना की जाएगी
// जिसको फ़ाइलें के सभी नीचे वाले निर्देशिका के साथ तुलना की जाएगी (रूट सूर्यास्त)।
// `IndexName` सेट किया जाना चाहिए।
// मिसाल
// "/": regexp.MustCompile("((.*).js|(.*).css|(.*).ico)$")
// देखें भी "iris.MatchCommonAssets"।
PushTargetsRegexp map[string]*regexp.Regexp

// सेंचिंग को मेमोरी में कैश और पूर्व-संकुचित फ़ाइलें सेव करने के लिए सक्षम करने के लिए।
Cache DirCacheOptions
// जब फ़ाइलें संकुचित स्थिति में सेव की जानी चाहिए।
Compress bool

// यदि `IndexName` नहीं मिला है, तो वर्तमान विनती निर्देशिका की फ़ाइल सूची।
ShowList bool
// अगर `ShowList` सत्य है, तो इस फ़ंक्शन का उपयोग वर्तमान अनुरोधित निर्देशिका (निर्देशिका) की फ़ाइल सूची दिखाने के लिए किया जाएगा
// डिफ़ॉल्ट के बजाय।
DirList DirListFunc

// डाउनलोड और स्थानीय फ़ाइलों में सहेजें।
Attachments Attachments

// स्वेच्छिक मान्यताधिकार जो प्रत्येक अनुरोध संसाधन के माध्यम से पुनरावृत्ति करने के लिए उपयोग करने के लिए।
AssetValidator func(ctx *context.Context, name string) bool
}