11

Tôi đang thực hiện yêu cầu GET đơn giản cho URL của mình và tôi gặp lỗi "ERR_INSECURE_RESPONSE". Điều này là tốt, vì chứng chỉ là tự ký. Nhưng tôi có hai câu hỏi liên quan đến nó:Cách xử lý ERR_INSECURE_RESPONSE trong tiện ích Google Chrome

  1. Có cách nào để khắc phục sự cố này không? Giống như thiết lập một lá cờ theo yêu cầu hoặc sth như thế? (có thể không có khả năng)
  2. Có cách nào chỉ để xử lý lỗi này (để thông báo cho người dùng) không? Tôi đã kiểm tra tất cả các lĩnh vực XMLHttpRequest và không thể nhìn thấy bất cứ điều gì có thể chỉ ra lỗi này. Trường trạng thái có giá trị bằng 0 (không).

Bất kỳ ý tưởng nào?

+0

Câu trả lời [ở đây] (https://superuser.com/q/487748/297822) – feetwet

Trả lời

9
  1. Không, API tiện ích không cung cấp bất kỳ phương pháp nào để sửa đổi cài đặt hoặc hành vi SSL.
  2. Bạn có thể sử dụng sự kiện chrome.webRequest.onErrorOccurred để nhận thông báo về lỗi mạng. Thuộc tính error sẽ chứa mã lỗi mạng.

Ví dụ:

chrome.webRequest.onErrorOccurred.addListener(function(details) { 
    if (details.error == 'net::ERR_INSECURE_RESPONSE') { 
     console.log('Insecure request detected', details); 
    } 
}, { 
    urls: ['*://*/*'], 
    types: ['xmlhttprequest'] 
}); 
var x = new XMLHttpRequest; 
x.open('get','https://example.com'); 
x.send(); 

Nếu để thử nghiệm mà thôi, chỉ cần bắt đầu Chrome với --ignore-certificate-errors cờ để cho phép các chứng chỉ tự ký để được sử dụng. Điều này ảnh hưởng đến tất cả các trang web trong cùng một phiên duyệt, vì vậy tôi khuyên bạn nên sử dụng một thư mục hồ sơ riêng cho mục đích này, bằng cách thêm --user-data-dir=/tmp/temporaryprofiledirectory vào các đối số dòng lệnh.

Một cách khác để tránh lỗi ở địa điểm đầu tiên là nhận chứng chỉ SSL hợp lệ. Đối với các mục đích phi nghệ thuật, bạn có thể nhận được free SSL certificate tại https://www.startssl.com.

+1

Với StartCom (chịu trách nhiệm cho StartSSL) và WoSign (chịu trách nhiệm về StartCom) đang được giám sát và [về cơ bản không thể ký chứng chỉ mới] (http://www.computerworld.com/article/3137162/security/google-to-untrust-wosign-and-startcom-certificates.html), thay thế chính và có thể chỉ miễn phí là [Hãy mã hóa] (https: // letsencrypt.org/). – Xan

+0

Tôi sử dụng Let's Encrypt nhưng tôi vẫn nhận được mạng :: ERR_INSECURE_RESPONSE. Tôi đang triển khai oauth2 và một chuyển hướng https đến một chuyển hướng khác sau khi xác thực và tôi nhận được lỗi đó trong bảng điều khiển. Tuy nhiên, trong thanh địa chỉ, nó nói https an toàn và không có lỗi nào. – steviesama

Các vấn đề liên quan