"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > HTMX का उपयोग करके ब्राउज़र को पुनर्निर्देशित करना

HTMX का उपयोग करके ब्राउज़र को पुनर्निर्देशित करना

2024-08-07 को प्रकाशित
ब्राउज़ करें:864

मैं वर्तमान में Go, Templ और HTMX का उपयोग करके अपना स्वयं का ब्लॉगिंग प्लेटफ़ॉर्म बनाने पर काम कर रहा हूं, जिसे मैं स्वयं होस्ट करूंगा। मैंने तय किया कि इससे निपटने के लिए यह एक मज़ेदार और उपयोगी परियोजना होगी जिससे मुझे इस ढेर के बारे में ज्ञान प्राप्त करने में भी मदद मिलेगी। इस ब्लॉग पोस्ट में, मैं एचटीएमएक्स का उपयोग करके रीडायरेक्ट को संभालने में मेरे सामने आई चुनौती के बारे में अपना अनुभव और समाधान साझा करूंगा।

ब्राउज़र को पुनर्निर्देशित करना

व्यवस्थापक के लिए कार्यक्षमता समाप्त करते समय, मैंने निर्णय लिया कि अंततः प्रोजेक्ट में HTMX को लागू करना शुरू करने का समय आ गया है। मैंने एक बटन तत्व के साथ शुरुआत की जो मेरे लॉगआउट हैंडलर को एक POST अनुरोध भेजेगा। आमतौर पर, मैं एक फॉर्म तत्व का उपयोग करके इस कार्य को पूरा करूंगा, लेकिन जैसा कि मैंने उल्लेख किया है, अब प्रोजेक्ट में एचटीएमएक्स को लागू करना शुरू करने का समय आ गया है। मुद्दा यह है कि मैं चाहता हूं कि यह POST कार्रवाई अभी भी एक फॉर्म की तरह व्यवहार करे और सर्वर से प्रतिक्रिया वापस / एंडपॉइंट पर रीडायरेक्ट हो।

समस्या: http.Redirect के साथ रीडायरेक्ट को संभालना

यहां वह बटन तत्व है जिसका मैंने उपयोग किया:


मेरे सामने जो समस्या आई वह यह थी कि रीडायरेक्ट के लिए प्रतिक्रिया अभी भी HTML है, और HTMX इस सामग्री को लॉगआउट बटन तत्व के लिए स्वैप करता है।

http.Redirect के साथ रीडायरेक्ट को संभालना

func (app *application) handleLogoutPost(w http.ResponseWriter, r *http.Request) {
    // handle business logic...
    //...

    http.Redirect(w, r, "/", http.StatusSeeOther)
}

छवि: सामग्री को लॉगआउट बटन के साथ बदल दिया गया है
The content has been swapped with the Logout button

समाधान: HX-रीडायरेक्ट हेडर का उपयोग करना

प्रतिक्रिया में http.Redirect को HX-Redirect हेडर और उसके मान के रूप में लक्ष्य स्थान के साथ प्रतिस्थापित करके सामग्री की अदला-बदली को रोका जा सकता है।

func (app *application) handleLogoutPost(w http.ResponseWriter, r *http.Request) {
    // handle business logic...
    //...

    // Write our HX-Redirect header with location and redirect
    w.Header().Set("HX-Redirect", "/")
    http.WriteHeader(http.StatusNoContent)
}

छवि: ब्राउज़र को यूआरएल पर ध्यान दें/रीडायरेक्ट कर दिया गया है।

Redirecting the browser using HTMX

निष्कर्ष

गो, टेम्पल और एचटीएमएक्स के साथ अपना खुद का ब्लॉगिंग प्लेटफॉर्म बनाने की प्रक्रिया अब तक एक फायदेमंद अनुभव रही है। एचटीएमएक्स को एकीकृत करके, यदि कोई आधुनिक वेबसाइट अतिरिक्त जावास्क्रिप्ट कोड लिखने और पेश करने की आवश्यकता के बिना साइट अभी भी कई इंटरैक्टिव फीचर्स रखने में सक्षम होगी। HX-रीडायरेक्ट हेडर के साथ रीडायरेक्ट को संभालना एक सरल और प्रभावी समाधान था। मुझे उम्मीद है कि यह पोस्ट किसी को भी उनकी परियोजनाओं में मदद करेगी और आपको अपने वेब अनुप्रयोगों में एचटीएमएक्स की क्षमता का पता लगाने के लिए प्रोत्साहित करेगी।

विज्ञप्ति वक्तव्य यह आलेख यहां पुन: प्रस्तुत किया गया है: https://dev.to/timenglesf/redirecting-the-browser-using-htmx-nan?1 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए स्टडी_गोलंग@163.com से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3