Implement protocol.registerFileProtocol

This commit is contained in:
Cheng Zhao 2015-08-12 15:18:31 +08:00
parent 337460cdc2
commit d2681d2ba1
8 changed files with 383 additions and 88 deletions

View file

@ -64,14 +64,16 @@ app.once 'ready', ->
catch e
# The chrome-extension: can map a extension URL request to real file path.
# protocol.registerProtocol 'chrome-extension', (request) ->
# parsed = url.parse request.url
# return unless parsed.hostname and parsed.path?
# return unless /extension-\d+/.test parsed.hostname
chromeExtensionHandler = (request, callback) ->
parsed = url.parse request.url
return callback() unless parsed.hostname and parsed.path?
return callback() unless /extension-\d+/.test parsed.hostname
# directory = getPathForHost parsed.hostname
# return unless directory?
# return new protocol.RequestFileJob(path.join(directory, parsed.path))
directory = getPathForHost parsed.hostname
return callback() unless directory?
callback path.join(directory, parsed.path)
protocol.registerFileProtocol 'chrome-extension', chromeExtensionHandler, ->
console.error 'Unable to register chrome-extension protocol'
BrowserWindow::_loadDevToolsExtensions = (extensionInfoArray) ->
@devToolsWebContents?.executeJavaScript "DevToolsAPI.addExtensions(#{JSON.stringify(extensionInfoArray)});"