Chrome의 새 참조자 정책과 관련된 SPFx 문제 >= 85
no-referrer-when-downgrade
에서 strict-origin-when-cross-origin
로 변경되었습니다. 이 변경 사항은 레퍼러 헤더(또는 단일 "r"이 있는 레퍼러 헤더)에 의존하는 경우 SharePoint 프레임워크 솔루션에 상당한 영향을 미칠 수 있습니다.리퍼러 헤더란 무엇입니까?
브라우저가 API 호출을 수행할 때마다
referrer
헤더가 수행된 페이지의 출처를 나타내는 데 사용됩니다.Chrome의 이전 기본값(
no-referrer-when-downgrade
)을 사용하면 SharePoint 페이지의 전체 URL이 됩니다. 예: https://tenant.sharepoint.com/sites/<site>/SitePages/just-a-page.aspx
.새 정책에서는 제공된 URL이 전체 URL에서 원본 URL로 변경되었습니다. 예:
https://tenant.sharepoint.com/
.영향은 무엇입니까?
Google Chrome 설명서 페이지에서 시각적 영향이 제한적일 것으로 예상된다고 언급합니다.
SharePoint에서만 솔루션을 구축할 때 백엔드 없이 사용하면 아무런 영향을 미치지 않습니다. 백엔드를 사용하고 리퍼러 헤더를 유효성 검사 메커니즘으로 사용하는 경우 이는 솔루션에 영향을 미칩니다. 이제 절대 페이지 URL 대신 SharePoint 테넌트 URL을 수신합니다.
Info: Read more about the new default referrer policy in Chrome on: A new default Referrer-Policy for Chrome: strict-origin-when-cross-origin
다른 브라우저는 어떻습니까?
현재 Chrome 및 Safari만 기본적으로
strict-origin-when-cross-origin
리퍼러 정책을 사용하는 것 같습니다.Microsoft Edge 및 Firefox는 여전히
no-referrer-when-downgrade
정책을 사용하고 있지만 Microsoft Edge의 경우 strict-origin-when-cross-origin
정책을 실험하고 있으며 Firefox 팀도 이동을 고려하고 있습니다.여기에서 브라우저 구현 상태를 확인할 수 있습니다. https://github.com/privacycg/proposals/issues/13
지금 무엇을 할 수 있습니까?
API에 대해
referrer
헤더를 사용하는 경우 다음과 같이 이러한 호출에 대해 referrerPolicy
를 지정하는 것이 가장 좋습니다.await ctx.httpClient.post(creatorUrl, HttpClient.configurations.v1, {
headers: {
"Authorization": `Bearer ${token}`,
"content-type": "application/json",
},
referrerPolicy: 'no-referrer-when-downgrade', // Provide `referrerPolicy` option for falling back to the previous default
body: JSON.stringify(msg)
});
그 결과 이제 API를 호출할 때 전체 URL이 제공됩니다.
Reference
이 문제에 관하여(Chrome의 새 참조자 정책과 관련된 SPFx 문제 >= 85), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/microsoft365/spfx-issues-with-the-new-referrer-policy-in-chrome-85-3pa8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)