अनुरोध करते समय, range हेडर सेट किया जा सकता है. इससे सर्वर को पूरे अनुरोध का सिर्फ़ एक हिस्सा दिखाने के लिए कहा जाता है. यह सुविधा, वीडियो फ़ाइल जैसी कुछ फ़ाइलों के लिए काम की होती है. इनमें उपयोगकर्ता, वीडियो को चलाने की जगह बदल सकता है.
यह मॉड्यूल क्या करता है?
कुछ मामलों में, कैश मेमोरी में सेव की गई फ़ाइल का इस्तेमाल किया जा सकता है
लेकिन ब्राउज़र ने range हेडर सेट किया है. आम तौर पर, हेडर को अनदेखा कर दिया जाता है.
यह मॉड्यूल कैश मेमोरी में सेव किए गए रिस्पॉन्स को पढ़ेगा और डेटा की एक खास सीमा चुनें.
बुनियादी इस्तेमाल
Workbox रेंज रिक्वेस्ट का इस्तेमाल करने के लिए, उस रणनीति में प्लग इन जोड़ें जिसकी रेंज रिक्वेस्ट की जांच करनी है.
import {registerRoute} from 'workbox-routing';
import {CacheFirst} from 'workbox-strategies';
import {RangeRequestsPlugin} from 'workbox-range-requests';
registerRoute(
({url}) => url.pathname.endsWith('.mp4'),
new CacheFirst({
plugins: [
new RangeRequestsPlugin(),
],
});
);
बेहतर इस्तेमाल के लिए
अगर आपको प्लगिन के बाहर इस लॉजिक का इस्तेमाल करना है
createPartialResponse() फ़ंक्शन का इस्तेमाल कर सकता है.
import {createPartialResponse} from 'workbox-range-requests';
createPartialResponse(request, cachedResponse);
ज़्यादा जानकारी के लिए, रेफ़रंस दस्तावेज़ देखें.
टाइप
RangeRequestsPlugin
रेंज रिक्वेस्ट प्लगिन, 'रेंज' के साथ अनुरोध के लिए काम को आसान बनाता है हेडर को कैश मेमोरी में सेव किए गए जवाब से भेजा जाएगा.
यह cachedResponseWillBeUsed प्लग इन कॉलबैक को इंटरसेप्ट करके ऐसा करता है और कैश मेमोरी में सेव किए गए रिस्पॉन्स बॉडी का सही सबसेट दिखाता है.
प्रॉपर्टी
-
कंस्ट्रक्टर
अमान्य
constructorफ़ंक्शन इस तरह दिखता है:() => {...}-
returns
-
तरीके
createPartialResponse()
workbox-range-requests.createPartialResponse(
request: Request,
originalResponse: Response,
): Promise<Response>
इनपुट के तौर पर Request और Response ऑब्जेक्ट दिए जाने पर, यह नए Response के लिए एक प्रोमिस दिखाएगा.
अगर मूल Response में पहले से ही कुछ कॉन्टेंट है (यानी उसमें है
206 की स्थिति) है, तो इसका मतलब यह है कि यह Range: को पहले ही पूरा करता है
ज़रूरतें पूरी करता है और उसे ज्यों का त्यों लौटा देगा.
पैरामीटर
-
CANNOT TRANSLATE
अनुरोध
अनुरोध, जिसमें रेंज होनी चाहिए: हेडर.
-
originalResponse
जवाब
जवाब.
रिटर्न
-
Promise<Response>
या तो
206 Partial Contentजवाब, जिसमें अनुरोध का मुख्य हिस्सा, कॉन्टेंट के उस हिस्से पर सेट होता है जो अनुरोध की मदद से तय किया जाता हैRange:हेडर या एक416 Range Not Satisfiableजवाब, अगरRange:हेडर की शर्तें पूरी नहीं की जा सकतीं.