{"id":9024,"date":"2024-11-09T04:16:07","date_gmt":"2024-11-08T22:46:07","guid":{"rendered":"https:\/\/www.satup.xyz\/index.php\/2024\/11\/09\/important-cross-origin-isolation-update-for-adobe-express-add-on-developers-by-kerri-shotts-nov-2024\/"},"modified":"2024-11-09T04:16:07","modified_gmt":"2024-11-08T22:46:07","slug":"important-cross-origin-isolation-update-for-adobe-express-add-on-developers-by-kerri-shotts-nov-2024","status":"publish","type":"post","link":"https:\/\/www.satup.xyz\/index.php\/2024\/11\/09\/important-cross-origin-isolation-update-for-adobe-express-add-on-developers-by-kerri-shotts-nov-2024\/","title":{"rendered":"Important Cross-Origin Isolation Update for Adobe Express Add-on Developers | by Kerri Shotts | Nov, 2024"},"content":{"rendered":"<p><br \/>\n<\/p>\n<div>\n<div>\n<div>\n<div class=\"speechify-ignore ab cp\">\n<div class=\"speechify-ignore bh l\">\n<div class=\"hv hw hx hy hz ab\">\n<div>\n<div class=\"ab ia\">\n<div>\n<div class=\"bm\" aria-hidden=\"false\"><a href=\"https:\/\/medium.com\/@photokandy?source=post_page---byline--8404940e4d43--------------------------------\" rel=\"noopener follow\"><\/p>\n<div class=\"l ib ic by id ie\">\n<div class=\"l fj\"><img loading=\"lazy\" decoding=\"async\" alt=\"Kerri Shotts\" class=\"l fd by dd de cx\" src=\"https:\/\/miro.medium.com\/v2\/resize:fill:88:88\/1*wIN2UJ15mEdnIYTTVG-r3w.jpeg\" width=\"44\" height=\"44\" loading=\"lazy\" data-testid=\"authorPhoto\"\/><\/div>\n<\/div>\n<p><\/a><\/div>\n<\/div>\n<div class=\"ih ab fj\">\n<div>\n<div class=\"bm\" aria-hidden=\"false\"><a href=\"https:\/\/blog.developer.adobe.com\/?source=post_page---byline--8404940e4d43--------------------------------\" rel=\"noopener  ugc nofollow\"><\/p>\n<div class=\"l ii ij by id ik\">\n<div class=\"l fj\"><img loading=\"lazy\" decoding=\"async\" alt=\"Adobe Tech Blog\" class=\"l fd by br il cx\" src=\"https:\/\/miro.medium.com\/v2\/resize:fill:48:48\/1*riyFijvwTfGcWNf1guRNtg.png\" width=\"24\" height=\"24\" loading=\"lazy\" data-testid=\"publicationPhoto\"\/><\/div>\n<\/div>\n<p><\/a><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<figure class=\"mz na nb nc nd ne mw mx paragraph-image\">\n<div role=\"button\" tabindex=\"0\" class=\"nf ng fj nh bh ni\">\n<div class=\"mw mx my\"><picture><source srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/format:webp\/1*PsAIksivYIiDbRyisLx3yg.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/format:webp\/1*PsAIksivYIiDbRyisLx3yg.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/format:webp\/1*PsAIksivYIiDbRyisLx3yg.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/format:webp\/1*PsAIksivYIiDbRyisLx3yg.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/format:webp\/1*PsAIksivYIiDbRyisLx3yg.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/format:webp\/1*PsAIksivYIiDbRyisLx3yg.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/format:webp\/1*PsAIksivYIiDbRyisLx3yg.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\" type=\"image\/webp\"\/><source data-testid=\"og\" srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/1*PsAIksivYIiDbRyisLx3yg.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/1*PsAIksivYIiDbRyisLx3yg.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/1*PsAIksivYIiDbRyisLx3yg.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/1*PsAIksivYIiDbRyisLx3yg.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/1*PsAIksivYIiDbRyisLx3yg.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/1*PsAIksivYIiDbRyisLx3yg.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/1*PsAIksivYIiDbRyisLx3yg.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\"\/><img fetchpriority=\"high\" alt=\"\" class=\"bh md nj c\" width=\"700\" height=\"400\" loading=\"eager\" role=\"presentation\"\/><\/picture><\/div>\n<\/div><figcaption class=\"nk ff nl mw mx nm nn bf b bg z du\">Important updates for Adobe Express add-on developers. (Image generated by Adobe Firefly)<\/figcaption><\/figure>\n<p id=\"d448\" class=\"pw-post-body-paragraph no np gu nq b nr ns nt nu nv nw nx ny nz oa ob oc od oe of og oh oi oj ok ol gn bk\"><strong class=\"nq gv\">Adobe Express will soon enforce cross-origin isolation for Chromium-based browsers<\/strong> (including Chrome, Microsoft Edge, Opera, and others). This change may negatively impact your add-on\u2019s functionality due to stricter rules enforced by the browser. You\u2019ll want to ensure that any add-ons you\u2019ve developed or are building now work in this new environment.<\/p>\n<p id=\"e76e\" class=\"pw-post-body-paragraph no np gu nq b nr ns nt nu nv nw nx ny nz oa ob oc od oe of og oh oi oj ok ol gn bk\"><strong class=\"nq gv\">Note: <\/strong>We expect the enforcement of cross-origin isolation headers to begin around the end of 2024. We\u2019ll provide an update here and in our documentation the moment we have a more certain date.<\/p>\n<p id=\"7c07\" class=\"pw-post-body-paragraph no np gu nq b nr pk nt nu nv pl nx ny nz pm ob oc od pn of og oh po oj ok ol gn bk\">This change may impact your add-on\u2019s access to external resources, especially if your add-on relies on iframes to display content or support payment flows. This could also impact add-ons that make <code class=\"cx pp pq pr ps b\">fetch<\/code> calls or display images from external sources. If your external source is not properly configured, users may see missing content or may encounter silent failures if your add-on can\u2019t load a remote resource. Since this results in a poor experience, developers must ensure that their add-ons work in this new environment.<\/p>\n<p id=\"aa4a\" class=\"pw-post-body-paragraph no np gu nq b nr ns nt nu nv nw nx ny nz oa ob oc od oe of og oh oi oj ok ol gn bk\">Currently, this change only impacts Chromium-based browsers (e.g., Chrome, Edge, Opera, etc.). This change also applies to add-ons running on Android devices if you\u2019ve developed a mobile add-on. Firefox and Safari browsers are not impacted.<\/p>\n<p id=\"d95e\" class=\"pw-post-body-paragraph no np gu nq b nr ns nt nu nv nw nx ny nz oa ob oc od oe of og oh oi oj ok ol gn bk\"><strong class=\"nq gv\">Note:<\/strong> This affects <em class=\"pt\">all<\/em> add-ons even if they aren\u2019t published in the add-on marketplace. This includes both private and internally distributed add-ons.<\/p>\n<h2 id=\"e6f9\" class=\"pu on gu bf oo pv pw dy os px py ea ow nz pz qa qb od qc qd qe oh qf qg qh qi bk\">Types of Failures<\/h2>\n<p id=\"f684\" class=\"pw-post-body-paragraph no np gu nq b nr pk nt nu nv pl nx ny nz pm ob oc od pn of og oh po oj ok ol gn bk\">Some failures will be more obvious than others, but all can negatively impact the user experience of your add-on.<\/p>\n<ul class=\"\">\n<li id=\"27bf\" class=\"no np gu nq b nr ns nt nu nv nw nx ny nz oa ob oc od oe of og oh oi oj ok ol qj qk ql bk\">If a nested iframe fails to load, Chrome and Chromium-based browsers display a very obvious error message inside the iframe indicating that the domain \u201crefused to connect\u201d.<\/li>\n<li id=\"7fec\" class=\"no np gu nq b nr qm nt nu nv qn nx ny nz qo ob oc od qp of og oh qq oj ok ol qj qk ql bk\">If an image fails to load, you may notice missing images in your add-on\u2019s user interface. You should also see failures in the Network section of the browser\u2019s developer tools.<\/li>\n<li id=\"9ac5\" class=\"no np gu nq b nr qm nt nu nv qn nx ny nz qo ob oc od qp of og oh qq oj ok ol qj qk ql bk\">If a network call fails due to JavaScript code, you should see warning and error messages in the browser\u2019s developer tools.<\/li>\n<\/ul>\n<p id=\"f43a\" class=\"pw-post-body-paragraph no np gu nq b nr pk nt nu nv pl nx ny nz pm ob oc od pn of og oh po oj ok ol gn bk\">Until Adobe Express enables these headers by default, you can verify that your add-on will function correctly by applying local header overrides. We\u2019ve provided<a class=\"af qr\" href=\"https:\/\/developer.adobe.com\/express\/add-ons\/docs\/guides\/develop\/coi\/#testing-your-add-on\" rel=\"noopener ugc nofollow\" target=\"_blank\"> full instructions on simulating these headers in our developer documentation<\/a>.<\/p>\n<h2 id=\"a377\" class=\"pu on gu bf oo pv pw dy os px py ea ow nz pz qa qb od qc qd qe oh qf qg qh qi bk\">What should you test?<\/h2>\n<p id=\"480f\" class=\"pw-post-body-paragraph no np gu nq b nr pk nt nu nv pl nx ny nz pm ob oc od pn of og oh po oj ok ol gn bk\">While most add-ons are likely to be unaffected by this change, you should double-check any flows that access external content or embed resources from other domains in your add-on\u2019s user interface. This includes purchase flows, loading external content in iframes, displaying assets from external domains, and adding content to the user\u2019s document that originates from an external domain.<\/p>\n<p id=\"9c18\" class=\"pw-post-body-paragraph no np gu nq b nr ns nt nu nv nw nx ny nz oa ob oc od oe of og oh oi oj ok ol gn bk\"><a class=\"af qr\" href=\"https:\/\/developer.adobe.com\/express\/add-ons\/docs\/guides\/develop\/coi\/#what-to-test-in-your-add-on\" rel=\"noopener ugc nofollow\" target=\"_blank\">Check out the documentation for more detail.<\/a><\/p>\n<p id=\"796b\" class=\"pw-post-body-paragraph no np gu nq b nr pk nt nu nv pl nx ny nz pm ob oc od pn of og oh po oj ok ol gn bk\">If you do encounter issues in your add-on related to cross-origin isolation, these are generally easy to address. You should check your add-on as soon as possible however\u2014if you rely on a third-party service, you may have to do more work to address any cross-origin isolation issues.<\/p>\n<p id=\"9e38\" class=\"pw-post-body-paragraph no np gu nq b nr ns nt nu nv nw nx ny nz oa ob oc od oe of og oh oi oj ok ol gn bk\"><a class=\"af qr\" href=\"https:\/\/developer.adobe.com\/express\/add-ons\/docs\/guides\/develop\/coi\/#addressing-issues-found-in-your-add-on\" rel=\"noopener ugc nofollow\" target=\"_blank\">Read our documentation for more detail on fixing issues.<\/a><\/p>\n<p id=\"9411\" class=\"pw-post-body-paragraph no np gu nq b nr pk nt nu nv pl nx ny nz pm ob oc od pn of og oh po oj ok ol gn bk\">You should <a class=\"af qr\" href=\"https:\/\/developer.adobe.com\/express\/add-ons\/docs\/guides\/develop\/coi\/\" rel=\"noopener ugc nofollow\" target=\"_blank\">review the documentation<\/a> for complete details about cross-origin isolation which includes steps on setting up your local environment for testing. You should also <a class=\"af qr\" href=\"https:\/\/developer.adobe.com\/express\/add-ons\/docs\/references\/changelog\/\" rel=\"noopener ugc nofollow\" target=\"_blank\">keep an eye on the changelog<\/a> as the documentation will be updated over time.<\/p>\n<p id=\"8b80\" class=\"pw-post-body-paragraph no np gu nq b nr ns nt nu nv nw nx ny nz oa ob oc od oe of og oh oi oj ok ol gn bk\">While we expect that the majority of add-ons are <em class=\"pt\">not <\/em>impacted or affected, we are performing smoke tests for currently published add-ons to double-check. If we encounter any add-ons with failures, we\u2019ll reach out to the developers of the affected add-ons. <strong class=\"nq gv\"><em class=\"pt\">However, it is wise for all add-on developers to test their add-ons since they know their add-on inside and out.<\/em><\/strong><\/p>\n<p id=\"0d2e\" class=\"pw-post-body-paragraph no np gu nq b nr ns nt nu nv nw nx ny nz oa ob oc od oe of og oh oi oj ok ol gn bk\">All new add-ons published to the marketplace will be reviewed with these headers in place. If the reviewer finds a problem with your submission related to cross-origin isolation that impacts the usability of your add-on, the reviewer will reject your add-on.<\/p>\n<p id=\"941c\" class=\"pw-post-body-paragraph no np gu nq b nr ns nt nu nv nw nx ny nz oa ob oc od oe of og oh oi oj ok ol gn bk\">If you have issues testing your add-on or addressing any issues relating to this change, <a class=\"af qr\" href=\"https:\/\/developer.adobe.com\/express\/community\" rel=\"noopener ugc nofollow\" target=\"_blank\">don\u2019t hesitate to let us know<\/a>.<\/p>\n<\/div>\n<p><br \/>\n<br \/><a href=\"https:\/\/blog.developer.adobe.com\/important-cross-origin-isolation-update-for-adobe-express-add-on-developers-8404940e4d43?source=rss----9342990108af---4\">Source link <\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Important updates for Adobe Express add-on developers. (Image generated by Adobe Firefly) Adobe Express will soon enforce cross-origin isolation for Chromium-based browsers (including Chrome, Microsoft Edge, Opera, and others). This change may negatively impact your add-on\u2019s functionality due to stricter rules enforced by the browser. You\u2019ll want to ensure that any add-ons you\u2019ve developed or [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":9025,"comment_status":"","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[19],"tags":[],"class_list":["post-9024","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-graphics-design"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/posts\/9024","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/comments?post=9024"}],"version-history":[{"count":0,"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/posts\/9024\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/media\/9025"}],"wp:attachment":[{"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/media?parent=9024"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/categories?post=9024"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/tags?post=9024"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}