คำถามติดแท็ก single-page-application

3
แนวทางปฏิบัติที่ดีที่สุดของ SPA สำหรับการรับรองความถูกต้องและการจัดการเซสชัน
เมื่อสร้างแอพพลิเคชั่นสไตล์ SPA โดยใช้เฟรมเวิร์กเช่น Angular, Ember, React เป็นต้นคนใดที่เชื่อว่าเป็นแนวปฏิบัติที่ดีที่สุดสำหรับการพิสูจน์ตัวตนและการจัดการเซสชัน ฉันสามารถนึกถึงวิธีการพิจารณาเข้าใกล้ปัญหา ถือว่าไม่แตกต่างจากการรับรองความถูกต้องด้วยเว็บแอปพลิเคชันทั่วไปโดยสมมติว่า API และ UI มีโดเมนต้นทางเดียวกัน สิ่งนี้น่าจะเกี่ยวข้องกับการมีคุกกี้เซสชันที่เก็บข้อมูลเซสชันฝั่งเซิร์ฟเวอร์และอาจเป็นจุดสิ้นสุด API เซสชันที่เว็บรับรองความถูกต้องของ UI สามารถรับข้อมูลผู้ใช้ปัจจุบันเพื่อช่วยในการกำหนดค่าส่วนบุคคลหรืออาจกำหนดบทบาท / ความสามารถในฝั่งไคลเอ็นต์ เซิร์ฟเวอร์จะยังคงบังคับใช้กฎที่ป้องกันการเข้าถึงข้อมูลแน่นอน UI จะใช้ข้อมูลนี้เพื่อกำหนดประสบการณ์เอง ปฏิบัติต่อเหมือนลูกค้าบุคคลที่สามใด ๆ ที่ใช้ API สาธารณะและรับรองความถูกต้องกับระบบโทเค็นบางประเภทที่คล้ายกับ OAuth กลไกโทเค็นนี้จะใช้โดย UI ไคลเอนต์เพื่อรับรองความถูกต้องของทุกคำขอที่ทำกับเซิร์ฟเวอร์ API ฉันไม่ใช่ผู้เชี่ยวชาญมากนักที่นี่ แต่ # 1 ดูเหมือนจะเพียงพอสำหรับกรณีส่วนใหญ่ แต่ฉันอยากได้ยินความเห็นที่มีประสบการณ์มากกว่านี้

16
วิธีตรวจจับเหตุการณ์ปุ่มย้อนกลับของเบราว์เซอร์ - เบราว์เซอร์ข้าม
คุณจะตรวจสอบอย่างชัดเจนว่าผู้ใช้กดปุ่มย้อนกลับในเบราว์เซอร์อย่างไรหรือไม่? คุณบังคับใช้ปุ่มย้อนกลับในหน้าภายในเว็บแอปพลิเคชันหน้าเดียวโดยใช้#URLระบบได้อย่างไร ทำไมบนโลกไม่เบราว์เซอร์ปุ่มย้อนกลับยิงเหตุการณ์ของตัวเอง!?

11
แอปพลิเคชั่นหน้าเดียว: ข้อดีและข้อเสีย [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน3 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันเคยอ่านเกี่ยวกับสปาและข้อดีแล้ว ฉันพบว่าพวกเขาส่วนใหญ่ไม่มั่นใจ มี 3 ข้อได้เปรียบที่กระตุ้นความสงสัยของฉัน คำถาม: คุณสามารถทำหน้าที่เป็นผู้สนับสนุนของ SPA และพิสูจน์ได้ว่าฉันผิดเกี่ยวกับสามข้อความแรก? === ADVANTAGES === 1. SPA นั้นดีมากสำหรับเว็บไซต์ที่ตอบสนองได้ดีมาก: การเรนเดอร์ฝั่งเซิร์ฟเวอร์นั้นยากที่จะนำไปใช้กับสถานะกลางทั้งหมด - สถานะมุมมองขนาดเล็กไม่ได้จับคู่กับ URL ได้ดี แอปหน้าเดียวมีความโดดเด่นด้วยความสามารถในการวาดส่วนหนึ่งส่วนใดของ UI โดยไม่ต้องใช้เซิร์ฟเวอร์ไปกลับเพื่อดึง HTML สิ่งนี้ทำได้โดยการแยกข้อมูลจากการนำเสนอข้อมูลโดยมีเลเยอร์โมเดลที่จัดการข้อมูลและเลเยอร์มุมมองที่อ่านจากโมเดล เกิดอะไรขึ้นกับการถือเลเยอร์โมเดลสำหรับผู้ที่ไม่ใช่สปา SPA เป็นสถาปัตยกรรมที่เข้ากันได้กับ MVC เพียงด้านเดียวหรือไม่ 2. ด้วย SPA เราไม่จำเป็นต้องใช้ข้อความค้นหาพิเศษไปยังเซิร์ฟเวอร์เพื่อดาวน์โหลดหน้าต่างๆ ฮะและผู้ใช้สามารถดาวน์โหลดได้กี่หน้าในระหว่างการเยี่ยมชมเว็บไซต์ของคุณ สองสาม? มีปัญหาด้านความปลอดภัยอื่นปรากฏขึ้นและคุณต้องแยกหน้าเข้าสู่ระบบหน้าผู้ดูแลระบบ ฯลฯ ออกเป็นหน้าอื่น ๆ ในทางกลับกันมันขัดแย้งกับสถาปัตยกรรม SPA …

5
วิธีการรวบรวมข้อมูล SEO SPA?
ผมเคยทำงานเกี่ยวกับวิธีการที่จะทำให้สามารถรวบรวมข้อมูลได้สปาโดย google อยู่บนพื้นฐานของ google คำแนะนำ แม้ว่าจะมีคำอธิบายทั่วไปบางอย่างที่ฉันไม่สามารถหาได้จากทุกที่ที่มีการสอนทีละขั้นตอนอย่างละเอียดยิ่งขึ้นพร้อมตัวอย่างจริง หลังจากเสร็จสิ้นสิ่งนี้ฉันต้องการแบ่งปันวิธีแก้ไขปัญหาของฉันเพื่อให้ผู้อื่นสามารถใช้ประโยชน์ได้และอาจปรับปรุงให้ดียิ่งขึ้น ฉันใช้MVCกับWebapiคอนโทรลเลอร์และPhantomjsที่ฝั่งเซิร์ฟเวอร์และDurandalที่ฝั่งไคลเอ็นต์พร้อมpush-stateเปิดใช้งาน ฉันยังใช้Breezejsสำหรับการโต้ตอบกับข้อมูลลูกค้า - เซิร์ฟเวอร์ซึ่งทั้งหมดนี้ฉันขอแนะนำอย่างยิ่ง แต่ฉันจะพยายามอธิบายให้มากพอที่จะช่วยผู้ใช้แพลตฟอร์มอื่น ๆ

2
CSRF Token จำเป็นเมื่อใช้ Stateless (= Sessionless) Authentication?
จำเป็นหรือไม่ที่จะต้องใช้การป้องกัน CSRF เมื่อแอปพลิเคชันต้องอาศัยการพิสูจน์ตัวตนแบบไร้สัญชาติ (โดยใช้บางอย่างเช่น HMAC) ตัวอย่าง: เรามีแอพหน้าเดียว (มิฉะนั้นเราต้องต่อท้ายโทเค็นในแต่ละลิงค์: <a href="...?token=xyz">...</a>. POST /authผู้ใช้จะตรวจสอบตัวเองใช้ ในการตรวจสอบสิทธิ์สำเร็จเซิร์ฟเวอร์จะส่งคืนโทเค็นบางส่วน โทเค็นจะถูกจัดเก็บผ่าน JavaScript ในตัวแปรบางตัวภายในแอพหน้าเดียว โทเค็นนี้จะใช้ในการ จำกัด การเข้าถึง URL /adminที่ชอบ โทเค็นจะถูกส่งภายใน HTTP Headers เสมอ ไม่มีเซสชัน Http และไม่มีคุกกี้ เท่าที่ฉันเข้าใจมี (?!) ไม่ควรใช้การโจมตีข้ามไซต์เนื่องจากเบราว์เซอร์จะไม่เก็บโทเค็นและด้วยเหตุนี้จึงไม่สามารถส่งไปยังเซิร์ฟเวอร์โดยอัตโนมัติได้ (นั่นคือสิ่งที่จะเกิดขึ้นเมื่อใช้คุกกี้ / เซสชั่น) ฉันพลาดอะไรไปรึเปล่า?

2
คือ store.dispatch ใน Redux synchronous หรือ asynchronous
ฉันรู้ว่านี่เป็นคำถามพื้นฐาน แต่ฉันไม่มีโชคในการหาคำตอบจากที่อื่น คือstore.dispatchในการซิงโครหรือไม่ตรงกันRedux? ในกรณีที่เป็นแบบอะซิงโครนัสมีความเป็นไปได้ที่จะเพิ่มการเรียกกลับหลังจากการดำเนินการได้รับการเผยแพร่ตามที่เป็นไปได้Reactหรือไม่?

1
วิธีการกำหนดค่า dotnet core 3 เพื่อรองรับ React SPA ในขณะที่ใช้ Http.sys และ URLPrefix
หลังจากเปลี่ยน URLPrefix ฉันได้รับข้อผิดพลาดต่อไปนี้: มิดเดิลแวร์หน้าเริ่มต้นของ SPA ไม่สามารถส่งคืนหน้าเริ่มต้น '/index.html' ได้เนื่องจากไม่พบและไม่มีมิดเดิลแวร์อื่นจัดการคำขอ บางสิ่งจำเป็นต้องบอกจุดหลักของ dotnet เกี่ยวกับคำนำหน้า แต่ฉันไม่สามารถหาชุดค่าผสมที่เหมาะสมได้ ช่วยชื่นชมมาก รหัสด้านล่าง: HostBuilder ถูกตั้งค่าด้วย: public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args) .ConfigureWebHostDefaults(webBuilder => { webBuilder.UseHttpSys(options => { options.AllowSynchronousIO = false; options.Authentication.Schemes = AuthenticationSchemes.None; options.Authentication.AllowAnonymous = true; options.MaxConnections = null; options.MaxRequestBodySize = 30000000; options.UrlPrefixes.Add("http://localhost:5005/Product/Site"); }); webBuilder.UseStartup<Startup>(); }); ConfigureServices: public …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.