Javascript ที่โฮสต์ภายนอกไม่สามารถเข้าถึงหน้า Visualforce
จากหน้า Visualforce ของฉันฉันกำลังเรียกใช้แอป Javascript ที่โฮสต์ภายนอก:
<apex:page>
<apex:iframe src="https://external.com/index.html" id="theFrame" />
</apex:page>
JS ภายนอกนี้พยายามดึงข้อมูลจากเพจ Visualforce ที่:
fetch("https://mydomain.visualforce.com/apex/dataPage").then(...);
ฉันเพิ่มโดเมนภายนอกในการตั้งค่าองค์กร CORS ของฉัน
ปัญหาคือสคริปต์ภายนอกไม่เห็นหน้าและได้รับข้อผิดพลาด:
ปฏิเสธที่จะเชื่อมต่อกับ "https://java-business-5237-dev-ed.cs69.my.salesforce.com/visualforce/session?url=https%3A%2F%2Fjava-business-5237-dev-ed-- c.visualforce.com% 2Fapex% dataPage 'เนื่องจากละเมิดคำสั่งนโยบายความปลอดภัยของเนื้อหาต่อไปนี้: "connect-src' self ' https://api.bluetail.salesforce.com https://staging.bluetail.salesforce.com https://preprod.bluetail.salesforce.com หยด: * .visualforce.com https://java-business-5237-dev-ed--c.documentforce.com https://cs69.salesforce.com ".
คำตอบ
คุณไม่สามารถเข้าถึงเพจ Visualforce จากไซต์ภายนอกเว้นแต่คุณจะสร้างไซต์ Salesforce และเข้าถึงได้
ดูรายละเอียดคำตอบนี้: Visual Force Page ซึ่งทุกคนสามารถเข้าถึงได้
ดูเหมือนว่าคุณต้องเพิ่มโดเมนบางส่วนในการตั้งค่ารายการที่อนุญาตพิเศษ
ตามนี้อนุญาตโดเมนที่ต้องการ :
หากคุณควบคุมการเข้าถึงอินเทอร์เน็ตของผู้ใช้หรือเซิร์ฟเวอร์ผ่านรายการอนุญาตให้เพิ่มโดเมนเหล่านี้เพื่อให้แน่ใจว่าคุณได้รับเนื้อหา Salesforce ทั้งหมด
- * .bluetail.salesforce.com
- * .content.force.com
- * .documentforce.com
- * .force.com
- * .forcesslreports.com
- * .forceusercontent.com
- * .lightning.com
- * .salesforce.com
- * .salesforceliveagent.com (ใช้กับ Chat, Omni-Channel และ SOS)
- * .salesforce-community.com (จำเป็นหากคุณใช้ Communities หรือ Site.com) trailblazer.me
- * .visualforce.com