Response: ÑвойÑÑво type
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since маÑÑ 2017 г..
ÐоÑÑÑпное ÑолÑко Ð´Ð»Ñ ÑÑÐµÐ½Ð¸Ñ ÑвойÑÑво type инÑеÑÑейÑа Response ÑодеÑÐ¶Ð¸Ñ Ñип оÑвеÑа.
Ðго возможнÑе знаÑениÑ:
basic: СÑандаÑÑнÑй оÑÐ²ÐµÑ Ñого же иÑÑоÑника Ñо вÑеми заголовками, за иÑклÑÑением "Set-Cookie".cors: ÐÑÐ²ÐµÑ Ð±Ñл полÑÑен Ð¾Ñ ÐºÐ¾ÑÑекÑного кÑоÑÑ-доменного запÑоÑа. Ðозможен доÑÑÑп к к некоÑоÑÑм заголовкам и ÑелÑ.error: СеÑÐµÐ²Ð°Ñ Ð¾Ñибка. ÐÐµÑ Ð¿Ð¾Ð»ÐµÐ·Ð½Ð¾Ð¹ инÑоÑмаÑии, опиÑÑваÑÑей оÑибкÑ. СÑаÑÑÑ Ð¾ÑвеÑа â 0, заголовки пÑÑÑÑ Ð¸ неизменÑемÑ. ÐÑо Ñип оÑвеÑа, полÑÑаемого изResponse.error().opaque: ÐÑÐ²ÐµÑ Ð½Ð° запÑÐ¾Ñ Ñ Ð¿Ð°ÑамеÑÑомmode: "no-cors"к кÑоÑÑ-Ð´Ð¾Ð¼ÐµÐ½Ð½Ð¾Ð¼Ñ ÑеÑÑÑÑÑ. СÑаÑÑÑ Ð¾ÑвеÑа â 0, заголовки и Ñело пÑÑÑÑе.opaqueredirect: ÐÑÐ²ÐµÑ Ð½Ð° запÑÐ¾Ñ Ñ Ð¿Ð°ÑамеÑÑомredirect: "manual". СÑаÑÑÑ Ð¾ÑвеÑа â 0, заголовки и Ñело пÑÑÑÑе.
ÐÑимеÑание:
ÐÑÐ²ÐµÑ "error" ÑакÑиÑеÑки никогда не веÑнÑÑÑÑ, Ñакой оÑÐ²ÐµÑ Ð¾Ñ fetch() пÑиведÑÑ Ðº оÑÐºÐ»Ð¾Ð½ÐµÐ½Ð¸Ñ Ð¿ÑомиÑа.
ÐнаÑение
СÑÑока ResponseType, ÑказÑваÑÑÐ°Ñ Ð½Ð° Ñип оÑвеÑа.
ÐÑимеÑÑ
РнаÑем пÑимеÑе Fetch Response (живой пÑимеÑ) Ð¼Ñ Ñоздаëм новÑй ÑкземплÑÑ Ð¾Ð±ÑекÑа Request Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ ÐºÐ¾Ð½ÑÑÑÑкÑоÑа Request(), пеÑÐµÐ´Ð°Ð²Ð°Ñ ÐµÐ¼Ñ Ð¿ÑÑÑ Ðº изобÑажениÑ.
ÐаÑем Ð¼Ñ Ð¾ÑпÑавлÑем запÑоÑ, пÑименÑÑ fetch(), извлекаем из оÑвеÑа обÑÐµÐºÑ Blob, иÑполÑзÑÑ Response.blob, Ñоздаëм обÑÐµÐºÑ URL Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ URL.createObjectURL() и оÑобÑажаем ÑезÑлÑÑÐ°Ñ Ð² Ñеге <img>.
ÐамеÑÑÑе, ÑÑо в веÑÑ
ниÑ
ÑÑÑокаÑ
блока fetch() Ð¼Ñ Ð²Ñводим в конÑÐ¾Ð»Ñ Ð·Ð½Ð°Ñение type из оÑвеÑа.
const myImage = document.querySelector("img");
const myRequest = new Request("flowers.jpg");
fetch(myRequest)
.then((response) => {
console.log("response.type =", response.type); // response.type = 'basic'
return response.blob();
})
.then((myBlob) => {
const objectURL = URL.createObjectURL(myBlob);
myImage.src = objectURL;
});
СпеÑиÑикаÑии
| Specification |
|---|
| Fetch > # dom-response-type > |