คำถามติดแท็ก interceptor

3
Magento 2: ปลั๊กอินก่อน / หลัง / หลังการโต้ตอบ
ใน Magento 2 เมื่อคุณสร้างปลั๊กอิน "รอบ" public function aroundRenderResult( \Magento\Framework\Controller\ResultInterface $subject, \Closure $proceed, ResponseHttp $response ) { //... $proceed($response); //... } คุณสามารถดำเนินการต่อไปปลั๊กอินรอบต่อไปปิดท้ายด้วยการเรียกวิธีการเดิมที่เกิดขึ้นจริงโดยการเรียก / อัญเชิญผ่านใน$proceedวิธีการ นี่เป็นรูปแบบการออกแบบทั่วไปที่มักพบในการใช้มิดเดิลแวร์ PHP Frameworks อย่างไรก็ตาม - มันนำเสนอความสับสนโดยไม่มีข้อมูลการใช้งาน เฉพาะ หากนอกเหนือไปจากaroundPluginวัตถุ / คลาสยังมีการกำหนดbeforeหรือafterปลั๊กอินเมื่อใดพวกมันจะเริ่มสัมพันธ์กับสายโซ่ของปลั๊กอิน คือวิธีทั้งหมดก่อนที่จะยิงก่อนที่จะมีวิธีการใด ๆ ไฟปลั๊กอิน? หรือก่อนที่ปลั๊กอินจะยิงก่อนที่ไฟสุดท้ายจะเกิดขึ้นจริงหรือไม่ ปัญหาเฉพาะฉันพยายามที่จะติดตามลงคือผมไม่สามารถดูเหมือนจะได้รับปลั๊กอินที่ติดอยู่กับวิธีการจัดส่งที่ควบคุมวีโอไอพี 2 หน้าเมื่อวีโอไอพีในโหมดแคชเต็มหน้า แคชเต็มหน้าดำเนินการโดยปลั๊กอินรอบ ๆ ที่ไม่ได้$proceed($response)โทร ฉันได้ลองขุดลงในโค้ดบางส่วนรอบ ๆ ปลั๊กอินเหล่านี้และพบว่าระบบนั้นยากที่จะให้เหตุผลโดยไม่ทราบว่าปลั๊กอินนั้นทำงานอย่างไร ie - คำอธิบายในหน้าเอกสาร devจะปรากฏขึ้นในอินสแตนซ์ที่เฉพาะเจาะจงนี้อันใดอันหนึ่งที่ไม่ถูกต้อง …

1
Magento 2: ไฟล์ Interceptors ใน var / generation คืออะไร?
ดังนั้นฉันสังเกตเห็นบางInterceptor.phpไฟล์มาvar/generation ฉันรู้ว่าโฟลเดอร์นี้มีชั้นเรียนที่สร้างขึ้นในทันทีสำหรับต่อไปนี้: โรงงาน ผู้รับมอบฉันทะ ปลั๊กอิน ฉันคิดว่าไฟล์ Interceptor นั้นเชื่อมโยงกับปลั๊กอิน แต่บางครั้งฉันก็ไม่เข้าใจว่าไฟล์เหล่านั้นถูกสร้างขึ้นมาอย่างไร ตัวอย่างเช่นฉันมีvar/generation/Magento/Framework/App/Response/Http/Interceptor.phpแต่ไฟล์นี้ดูเหมือนจะไม่ตรงกับชั้นเรียนที่มีอยู่ใด ๆ ดังนั้นฉันกำลังมองหาเวิร์กโฟลว์อธิบายอย่างดีเกี่ยวกับวิธีสร้างไฟล์ Interceptor.php?

3
คลาสใดที่“ สามารถสกัดกั้น / ปลั๊กอินได้” ใน Magento 2
วันที่: 30 พฤษภาคม 2558 (ตามลักษณะของ Magento 2 ที่เปลี่ยนแปลงไป) วีโอไอพี 2 แนะนำแนวคิดปลั๊กอินที่ดำเนินการผ่านทางรูปแบบการสกัดกั้น มีอะไรไม่ชัดเจนจากเอกสาร - คลาสและวัตถุใดใน Magento ที่ "สามารถดักจับ" ได้ นั่นคือคุณกำหนดค่าปลั๊กอินด้วย XML ที่มีลักษณะดังนี้ <config> <type name="{ObservedType}"> <plugin name="{pluginName}" type="{PluginClassName}" sortOrder="1" disabled="true"/> </type> </config> ObservedTypeแต่ก็ไม่ชัดเจนซึ่งการเรียนที่ถูกต้องในฐานะที่เป็น นี้บทความวิกิพีเดียเก่าให้เบาะแสบางอย่างเมื่อมันพูดว่า โปรดทราบว่าคุณสมบัติปลั๊กอินไม่สามารถใช้ได้กับ - คลาสที่สร้างโดยไม่ต้องพึ่งพาการฉีดนั่นคือสร้างด้วยโอเปอเรเตอร์ใหม่โดยตรง - วิธีการสุดท้าย, - คลาสสุดท้าย เป็นที่ใด ๆวัตถุที่สร้างขึ้นผ่านการฉีดอยู่พร้อมที่จะถูกดัก? ไม่ObservedTypeจำเป็นต้องเป็นคำใบ้ชนิดที่มีให้บริการในส่วน__constructวิธีการหรือสามารถมัน (ควรได้หรือไม่) เป็นสิ่งอื่นใด ส่วนใหญ่พยายามที่จะทำให้ฉันเข้าใจสิ่งที่ทำได้และไม่สามารถทำได้ด้วยเครื่องดักฟัง Magento 2 ก่อนที่ฉันจะเริ่มใช้มัน

3
การสกัดกั้นใน magento2 แทนที่ผู้สังเกตการณ์ใน magento1 หรือไม่
การสกัดกั้นตั้งใจที่จะเป็นวิธีที่ต้องการเมื่อจัดการกับการเปลี่ยนพฤติกรรมของวิธีการดั้งเดิมใน Magento2 ในฐานะผู้สังเกตการณ์ใน magento1 หรือไม่? https://wiki.magento.com/display/MAGE2DOC/Using+Interception
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.