ไม่สามารถโหลดทรัพยากรภายใต้ Chrome


194

มีรูปภาพจำนวนมากในหน้าเว็บ

เบราว์เซอร์อื่นกำลังดาวน์โหลดอย่างถูกต้อง แต่ Chrome ไม่โหลด

ในคอนโซลของผู้พัฒนาจะแสดงข้อความต่อไปนี้สำหรับแต่ละภาพ:

ไม่สามารถโหลดทรัพยากร

ปัญหานี้จะปรากฏเฉพาะใน Chrome

มันคืออะไร?


คุณสามารถแสดง HTML ได้ไหม เราต้องการข้อมูลเพิ่มเติมเพื่อช่วยคุณแก้ไขปัญหา
Andre

1
เหตุผลที่ฉันตั้งค่าความโปรดปรานสำหรับคำถามนี้ก็คือมันเกิดขึ้นเป็นครั้งคราวและไม่เกี่ยวข้องกับภาพเท่านั้น ไซต์ที่ฉันกำลังทำงานนั้นทำงานได้ดีใน Firefox และล้มเหลวเป็นครั้งคราวในโครเมี่ยม

1
คุณแก้ปัญหาอย่างไร
maks

ตรวจสอบว่าส่วนขยายของ Google Chrome กำลังบล็อกคำขอหรือไม่
ซามูเอล Edson

คำตอบ:


280

ฉันพบปัญหานี้เมื่อเร็ว ๆ นี้และค้นพบว่าเกิดจากส่วนขยาย "Adblock" (ฉันเดาได้ดีที่สุดว่าเป็นเพราะฉันมีคำว่า "แบนเนอร์" และ "โฆษณา" ในชื่อไฟล์)

ในการทดสอบอย่างรวดเร็วเพื่อดูว่าเป็นปัญหาของคุณหรือไม่ให้เริ่ม Chrome ในโหมดไม่ระบุตัวตนโดยปิดการใช้งานส่วนขยาย ( ctrl+ shift+n ) และดูว่าหน้าเว็บของคุณทำงานหรือไม่ โปรดทราบว่าโดยค่าเริ่มต้นส่วนขยายทั้งหมดจะถูกปิดการใช้งานในโหมดไม่ระบุตัวตนเว้นแต่ว่าคุณได้ตั้งค่าให้เรียกใช้ (โดยเฉพาะchrome://extensions)


2
ใช่แล้ว! ฉันมี "ป๊อปอัป" ในชื่อและนี่เป็นสาเหตุของปัญหา
Janik Zikovsky

ขอบคุณ. เว็บไซต์ localhost ถูกปรับครั้งเดียวใน URL ที่สดปัญหาปรากฏมีฉันคิด ..
แซม Doidge

1
ขอบคุณ! ฉันใช้เวลากว่า 30 นาทีเพื่อหาสาเหตุที่รหัสของฉันไม่ทำงานใน Chrome
heyomi

2
ขอบคุณที่ช่วยฉัน ฉันมีคำว่า 'โฆษณา' ใน URL ของฉัน เมื่อฉันลบมันจะทำงาน แต่มีวิธีแก้ไขปัญหานี้หรือไม่? ฉันหมายถึงฉันไม่ต้องการเปลี่ยน URL ของฉัน
Amit

2
ฉันมีปัญหานี้เช่นกัน แต่ฉันไม่มีส่วนขยายใด ๆ ที่ติดตั้งและใช้งานเวอร์ชันล่าสุดต้องทำอย่างไร
TheCrazyProfessor

31

ตรวจสอบแท็บเครือข่ายเพื่อดูว่า Chrome ล้มเหลวในการดาวน์โหลดไฟล์ทรัพยากรใด ๆ


2
@Cartman ฉันขอโทษสำหรับความไม่รู้ของฉัน แท็บเครือข่ายหมายถึงอะไร

คลิกขวาที่องค์ประกอบใด ๆ ในหน้าเลือก "ตรวจสอบองค์ประกอบ" มันจะเปิด "ผู้ตรวจสอบ" สารวัตรมีแท็บจำนวนมากสำหรับการดีบักหน้าเว็บหนึ่งในนั้นคือแท็บ "เครือข่าย" คลิกโหลดหน้าเว็บซ้ำและตรวจสอบ สำหรับข้อผิดพลาดเครือข่ายใด ๆ
ismail

@Cartman - ขอบคุณฉันใช้ผู้ตรวจสอบเป็นจำนวนมากและไม่พบแท็บเครือข่าย ฉันมีองค์ประกอบทรัพยากรสคริปต์ไทม์ไลน์โปรไฟล์พื้นที่เก็บข้อมูลการตรวจสอบและคอนโซล ฉันจะลองไปรอบ ๆ และพยายามทำความเข้าใจว่าทำไมฉันจึงไม่มีแท็บเครือข่าย

1
ฉันใช้ Chromium 10.0.xx.xx ตรวจสอบให้แน่ใจว่าคุณใช้สแนปชอตล่าสุด
ismail

@Cartman - ขอบคุณสำหรับปลายโครเมียม - ไม่ทราบเกี่ยวกับโครงการนี้ เวอร์ชันที่ติดตั้ง 10.0.621.0 (70119) ได้สร้างปัญหาขึ้นมาใหม่ ข้อความในแท็บเครือข่ายได้รับการร้องขอ 16 การถ่ายโอน 0B คอนโซลกำลังระบุ: GET localhost: 51707 / Content / Theme.cssไม่ได้กำหนด (ไม่ได้กำหนด) แม้กระทั่งคิดว่า 20 วินาทีก่อนที่จะดึงข้อมูลได้โดยไม่มีปัญหาใด ๆ

17

ในกรณีที่มันช่วยทุกคนฉันมีปัญหาเดียวกันนี้อย่างแน่นอนและพบว่าเกิดจากส่วนขยายของ Chrome "Do Not Track Plus" (รุ่น 2.0.8) เมื่อฉันปิดการใช้งานส่วนขยายภาพที่โหลดโดยไม่มีข้อผิดพลาด


ขอบคุณสำหรับเคล็ดลับฉันอยู่ในสถานการณ์เดียวกันและดึงผมของฉันมากกว่าเหตุผลคืออะไร
jasalguero

สิ่งที่เกิดขึ้นกับฉัน Chrome ไม่ได้โหลดไฟล์ CSS เพราะส่วนขยาย AdBlock เมื่อฉันยกเลิกส่วนขยายก็ทำงานได้ดี
Chani Poz

14

นอกจากนี้ยังมีตัวเลือกในการปิดแคชสำหรับทรัพยากรเครือข่าย สิ่งนี้อาจดีที่สุดสำหรับการพัฒนาสภาพแวดล้อม

  1. คลิกขวาที่ chrome
  2. ไปที่ 'ตรวจสอบองค์ประกอบ'
  3. มองหาแท็บ 'เครือข่าย' ที่ใดที่หนึ่งที่ด้านบน คลิกมัน
  4. ทำเครื่องหมายที่ช่องทำเครื่องหมาย 'ปิดใช้งานแคช'

คุณสามารถตรวจสอบสิ่งนี้ได้ครั้งเดียวstackoverflow.com/questions/42693371/… @john ktejik
Yokesh Varadhan

มันทำเพื่อฉัน
JayJay123

ด้วยการแก้ไขปัญหาเฉพาะสำหรับฉัน มันทำเพื่อนักพัฒนาเท่านั้น ฉันจะนำความรู้นี้ไปใช้เพื่อเผยแพร่เพื่อให้ผู้ใช้ไม่พบปัญหานี้อีกต่อไป สิ่งนี้หมายความว่า onclick ที่ให้ข้อผิดพลาดนี้แก่ฉันควรล้างแคชทุกครั้งหรือบางสิ่งบางอย่างตามสายเหล่านั้นหรือไม่
Stefano Martinengo

คุณช่วยฉันได้มากเวลา ฉันลองใช้น็อต 1,2 และ 4 ของคุณไม่ใช่ 4 ตอนนี้ฉันตรวจสอบช่องทำเครื่องหมาย 'ปิดใช้งานแคช' แล้วมีความแตกต่างมากมาย
สวัสดี

8

ทางออกของ Kabir นั้นถูกต้อง URLรูปภาพของฉันคือ

/images/ads/homepage/small-banners01.png, 

และนี่คือการเพิ่มขึ้นของ AdBlock นี่ไม่ใช่ปัญหาข้ามโดเมนสำหรับฉันและมันล้มเหลวทั้งบน localhost และบนเว็บ

ฉันใช้แท็บเครือข่ายของ Chrome เพื่อตรวจแก้จุดบกพร่องและค้นหาผลลัพธ์ที่สับสนมากสำหรับรูปภาพเฉพาะเหล่านี้ที่ไม่สามารถโหลดได้ คำขอแรกจะไม่ส่งคืนการตอบกลับ (สถานะ "(รอดำเนินการ)") ต่อมาในบรรทัดมีคำขอที่สองที่ระบุ URL ดั้งเดิมจากนั้น "เปลี่ยนเส้นทาง" เป็นผู้เริ่มต้น ส่วนหัวคำขอเปลี่ยนเส้นทางมีทั้งหมดสำหรับบรรทัดสั้น ๆ ที่เหมือนกันของข้อมูลที่เข้ารหัสด้วย base64 และกลับไม่มีการตอบกลับแม้ว่าสถานะจะเป็น "สำเร็จ":

GET      data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACklEQVR4nGMAAQAABQABDQottAAAAABJRU5ErkJggg== HTTP/1.1

ต่อมาฉันสังเกตเห็นว่ารูปแบบอินไลน์เหล่านี้ถูกเพิ่มเข้ากับองค์ประกอบภาพทั้งหมด:

    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

ในที่สุดฉันไม่ได้รับข้อความ "ไม่สามารถโหลดทรัพยากร" ในคอนโซล แต่เป็นดังนี้:

Port error: Could not establish connection. Receiving end does not exist.

หากสิ่งเหล่านี้เกิดขึ้นกับคุณอาจเป็นเรื่องเกี่ยวกับ AdBlock ปิดและ / หรือเปลี่ยนชื่อไฟล์ภาพของคุณ

นอกจากนี้เนื่องจากCSSแบบอินไลน์ที่สร้างโดย AdBlock รูปแบบของแถบเลื่อนการโปรโมตของฉันจึงถูกปิดลง ในขณะที่ฉันสามารถแก้ไขปัญหาเลย์เอาต์ด้วย CSS ก่อนที่จะหาวิธีแก้ปัญหาของ Kabir แต่ CSS นั้นค่อนข้างไม่จำเป็นและส่งผลต่อความยืดหยุ่นของตัวเลื่อนเพื่อจัดการกับภาพหลายขนาด

ฉันเดาบทเรียนคือ: ระวังสิ่งที่คุณตั้งชื่อภาพของคุณ ภาพเหล่านี้ไม่เป็นอันตรายหรือน่ารำคาญเท่าที่แจ้งเตือนผู้เข้าชมโปรโมชันปัจจุบันและรายการพิเศษในลักษณะที่ไม่เป็นการรบกวน


อีกเหตุผลหนึ่งที่ adBlock ไม่ควรมีอยู่
StephenKelzer

2
adBlock ควรมีอยู่จริงและต้องใช้ชีวิตต่อไป
Coty Embry

7

หากภาพที่ถูกสร้างขึ้นผ่านทาง ASP ให้แน่ใจว่าคุณไม่ได้เรียกResponse.Write() Response.Close();Chrome ไม่ชอบ


4

ฉันได้รับข้อผิดพลาดนี้เฉพาะใน Chrome (รุ่นล่าสุด 24.0.1312.57 m) และเฉพาะในกรณีที่ภาพมีขนาดใหญ่กว่า html img ฉันใช้ php script เพื่อแสดงภาพเช่นนี้

header('Content-Length: '.strlen($data));
header("Content-type: image/{$ext}");
echo base64_decode($data);

ฉันแก้ไขมันเพิ่ม 1 ลงในความยาวของภาพ:

header('Content-Length: '.strlen($data) + 1);
header("Content-type: image/{$ext}");
echo base64_decode($data);

ปรากฏว่า Chrome ไม่ต้องการจำนวนไบต์ที่ถูกต้อง

ทดสอบกับ sucess ใน Chrome และ IE 9 หวังว่าจะช่วยได้


เหมือนกันที่นี่ .. ในกรณีของฉันมันเป็น Service Stack ที่เพิ่มความยาวเนื้อหาเมื่อซีเรียลไลซ์วัตถุ แต่ไม่ใช่ Stream หรือ Byte Array
shex

ทันใดนั้น "+1" ในความยาวเนื้อหาเริ่มทำให้ "ส่วนหัวไม่ถูกต้อง" ในการสื่อสารของฉันกับ Tomcat (ฉันใช้ php java bridge เพื่อ comunicate apache กับ tomcat) ฉันลบ "+1" นี้ออกและทำงานได้ตามปกติใน Chrome ข้อผิดพลาดกับกลุ่มข้อมูลหายไปด้วย ปัญหาแปลก ๆ ... ฉันไม่เข้าใจว่าเกิดอะไรขึ้น
marcostrama

3

ข้อเท็จจริง:


3

มีการทำงานชั่วคราวในการแสดงReenable (ชั่วคราว) การสนับสนุน ModalDialog ใน Chrome (สำหรับ Windows) 37+37+

โดยทั่วไปให้สร้างสตริงใหม่ในรีจิสทรีที่

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\EnableDeprecatedWebPlatformFeatures

ภายใต้คีย์ EnableDeprecatedWebPlatformFeatures สร้างค่าสตริงที่มีชื่อและค่าของ1 ShowModalDialog_EffectiveUntil20150430หากต้องการตรวจสอบว่ามีการเปิดใช้นโยบายให้ไปที่chrome://policyURL


3

FYI - ฉันมีปัญหานี้เช่นกันและปรากฎว่า html ของฉันแสดงรายการไฟล์. jpg ด้วย. jpg ในตัวพิมพ์ใหญ่ แต่ตัวไฟล์เองก็เป็นตัวพิมพ์เล็ก. jpg สิ่งนั้นแสดงผลได้ดีในท้องถิ่นและใช้ Codekit แต่เมื่อมันถูกผลักไปยังเว็บมันจะไม่โหลด เพียงแค่เปลี่ยนชื่อไฟล์ให้มีนามสกุล. jpg เป็นตัวพิมพ์เล็กเพื่อให้ตรงกับ html


สำหรับผมนี่เป็นปัญหา :)
Clindo

2

ใน Chrome (Canary) ฉันไม่ได้เลือกส่วนขยาย "Appspector" ที่ล้างข้อผิดพลาด ป้อนคำอธิบายรูปภาพที่นี่


1

ฉันอัปเดตเบราว์เซอร์ Chrome เป็นเวอร์ชันล่าสุดและแก้ไขปัญหาแล้ว


0

มันเกิดจาก ad-blocker เมื่อชื่อไฟล์โครงการมีคำเช่น 'ad' ตัวบล็อคโฆษณาก็จะบล็อกไฟล์เหล่านี้เพื่อโหลด

ทางออกที่ดีที่สุดคืออย่าบันทึกไฟล์ใด ๆ ด้วยปุ่มชื่อเหล่านี้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.