2014-10-09 16 views
7
WebSocket connection to 'ws://localhost:35729/livereload' failed: Error in connection establishment: net::ERR_CONNECTION_REFUSED chromereload.js:9 
'WebSocket.URL' is deprecated. Please use 'WebSocket.url' instead. chromereload.js:12 

Tôi nhận được thông báo lỗi này trong tiện ích chrome của mình kể từ khi chrome được cập nhật lên phiên bản 38. Tôi không chắc chắn những gì đang diễn ra ở đây, nhưng giờ đây việc mở hầu hết mọi thứ sụp đổ. Tôi đã sử dụng yeoman để dàn dựng dự án của tôi ngay từ đầu, và mọi thứ đều hoạt động tốt. Tôi đã cố gắng loại bỏ ganeload từ bản kê khai, nhưng điều đó dường như phá vỡ tất cả mọi thứ. Bất kỳ trợ giúp sẽ được đánh giá cao.'WebSocket.URL' không được chấp nhận. Vui lòng sử dụng 'WebSocket.url' thay vì

Đây là mã:

'use strict'; 

// Reload client for Chrome Apps & Extensions. 
// The reload client has a compatibility with livereload. 
// WARNING: only supports reload command. 

var LIVERELOAD_HOST = 'localhost:'; 
var LIVERELOAD_PORT = 35729; 
var connection = new WebSocket('ws://' + LIVERELOAD_HOST + LIVERELOAD_PORT + '/livereload'); 

connection.onerror = function (error) { 
    console.log('reload connection got error' + JSON.stringify(error)); 
}; 

connection.onmessage = function (e) { 
    if (e.data) { 
     var data = JSON.parse(e.data); 
     if (data && data.command === 'reload') { 
      chrome.runtime.reload(); 
     } 
    } 
}; 
+0

Vâng, bạn đã thử thay đổi 'WebSocket.URL' cho 'WebSocket.url'? – Brad

+0

Như bạn có thể thấy, không có gì trong mã này đề cập đến 'WebSocket.URL', có nghĩa là lỗi ở đâu đó. Tìm kiếm trong các tệp tìm kiếm mã không đúng. – Xan

+0

chúng tôi đang nhìn thấy giống nhau và không sử dụng. URL, bạn có tìm ra điều này không? – artfulhacker

Trả lời

6

Trong Chrome thông điệp này được phát ra khi sử dụng một cái gì đó giống như JSON.stringify() hoặc tương tự trên một đối tượng WebSocket. Các loại thường trình này sẽ truy cập thuộc tính WebSocket.URL, không được chấp nhận và phát ra cảnh báo này. Ngay cả khi mã của bạn không rõ ràng gọi WebSocket.URL. Bạn có thể xóa thuộc tính này để ẩn cảnh báo khỏi Chrome.

var ws = new WebSocket('wss://example.com/'); 
delete ws.URL; 
console.log(JSON.stringify(ws)); 
Các vấn đề liên quan