小智 20
如果网页以"file://"模式加载而不是由http服务器提供,则默认情况下可以进行ajax调用.
如果您仍然遇到CORS限制问题,可以将此选项设置为浏览器窗口对象:
var BrowserWindow = require('browser-window');
var win = new BrowserWindow({
webPreferences: { webSecurity: false }
});
Run Code Online (Sandbox Code Playgroud)
这里有两个问题
CORS限制,阻止客户端发起请求,以及由服务器设置的Access-Control-Allow-Origin标头.
通过在Browser-window对象上设置web-security选项,可以解决第一个问题.
"web-preferences" : {
"web-security" : false
},
Run Code Online (Sandbox Code Playgroud)
第二个问题,即Electron实际上发送'file://'作为请求中Origin的值,据我所知,它没有解决方案.您可以选择在Access-Control-Allow-Origin标头(服务器端)中允许"file://"或"*".
我实际上已经要求允许在请求中设置原点,但我怀疑它不会得到太大的牵引力.
解决方案的更新语法:
var BrowserWindow = require('browser-window');
var win = new BrowserWindow({
webPreferences: {webSecurity: false}
});
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
12000 次 |
最近记录: |