我正在考虑在我正在构建的Electron [0]应用程序中实现一个登录系统,但却遇到了处理会话的问题.基本上我想存储用户会话,因此它在应用程序重启之间保持不变(如果启用了"记住我").
我必须使用现有的后端,它使用cookie身份验证,我无法在那里更改任何内容.
从Session对象[1]上的Electron文档中我收集到我应该使用像fe这样的分区persist:someName来获得持久存储,但是这似乎不会在应用程序重启之间持续存在.
我目前设置cookie的方式如下:
// main-process/login.js
const session = require('electron').session;
const currentSession = session.fromPartition('persist:someName').cookies;
currentSession.set({
name: 'myCookie',
url: 'https://www.example.com',
value: 'loggedin=1',
expirationDate: 1531036000
}, function(error) {
console.log('Cookie set');
if (error) {
console.dir(error);
}
});
Run Code Online (Sandbox Code Playgroud)
运行之后,我看到了Cookie set输出,但是在重新启动应用程序并运行以下代码时:
// main.js
const session = require('electron').session;
const currentSession = session.fromPartition('persist:someName').cookies;
currentSession.get({}, function(error, cookies) {
console.dir(cookies);
if (error) {
console.dir(error);
}
});
Run Code Online (Sandbox Code Playgroud)
返回的输出是[].
关于我做错了什么或需要做什么不同的任何指示都将受到高度赞赏!
[0] http://electron.atom.io
[1] http://electron.atom.io/docs/api/session/
我正在尝试使用bash脚本中的sed替换HTML页面中某些HTML标记的内容.出于某种原因,我没有得到正确的结果,因为它没有取代任何东西.它必须是非常简单/愚蠢的东西忽视,任何人都在乎帮助我?
用于搜索/替换的HTML:
Unlocked <span id="unlockedCount"></span>/<span id="totalCount"></span> achievements for <span id="totalPoints"></span> points.
Run Code Online (Sandbox Code Playgroud)
使用的sed命令:
cat index.html | sed -i -e "s/\<span id\=\"unlockedCount\"\>([0-9]\{0,\})\<\/span\>/${unlockedCount}/g" index.html
Run Code Online (Sandbox Code Playgroud)
这一点是解析HTML页面并根据一些外部数据更新数字.对于第一次运行,标签的内容将为空,之后它们将被填充.
编辑:
我最终使用了答案的组合,产生了以下代码:
sed -i -e 's|<span id="unlockedCount">\([0-9]\{0,\}\)</span>|<span id="unlockedCount">'"${unlockedCount}"'</span>|g' index.html
Run Code Online (Sandbox Code Playgroud)
非常感谢@Sorpigal,@ tripleee,@classic的帮助!
我有一个网页,我附加iframe如下:
$('<iframe id="testIframe" />').src('http://www.google.nl/').appendTo('body');
Run Code Online (Sandbox Code Playgroud)
发送用于加载此iframe内容的Accept标头设置为:
application/xml, application/xml+xhtml, text/html, text/plain, */*
Run Code Online (Sandbox Code Playgroud)
这里的问题是响应现在作为XML返回,因为在服务器端读取了接受头,并且响应以accept头发送的格式发回(在本例中使用application/xml).
现在我知道我可以使用$ .load()功能并为其设置接受标头,但我不知道如何在iframe中显示返回的HTML.例如,这会显示一个空白的iframe:
$('#testIframe').load('http://www.google.com/', function(response) {
$('#testIframe').append(response);
});
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激!
我一直在研究Docker以及如何在服务器上托管多个网站"Docker方式".据我所知,理想情况下,一切都应该运行自己的容器,不应该共享这些容器.
我的问题是下面的概述是否是一个有效的容器设置,请求进入单个反向代理,该请求将请求转发给底层的Web服务器以处理实际请求.
此外,在下面的三种情况中,我详细介绍了为应用程序包含源文件的不同方法,并想知道三者中哪一种最常用/最好用.
我的愿望是能够在Docker中的单个服务器上运行不同的网站.这些网站可以有不同的要求,如图中不同的PHP-FPM版本所示.网站本身的部署对我来说有点不清楚,因为我不确定是否应该使用nginx/PHP-FPM包含源文件或单独部署它.
我目前的设置如下:
泊坞窗,compose.yml
version: '2'
services:
nginx:
image: nginx:alpine
restart: always
ports:
- '80:80'
links:
- example_com
- example_org
- example_net
volumes:
- ./nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf:ro
example_com:
image: php:7.0-fpm-alpine
restart: always
volumes:
- ./sites/example_com:/var/www/example_com:ro
example_org:
image: php:7.0-fpm-alpine
restart: always
volumes:
- ./sites/example_org:/var/www/example_org:ro
example_net:
image: php:7.0-fpm-alpine
restart: always
volumes:
- ./sites/example_net:/var/www/example_net
Run Code Online (Sandbox Code Playgroud)
nginx的/ conf.d/default.conf
server {
listen 80;
server_name www.example.com example.com;
location ~ \.php$ {
fastcgi_pass example_com:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/example_com$fastcgi_script_name;
include fastcgi_params;
}
}
server {
listen 80;
server_name …Run Code Online (Sandbox Code Playgroud) 我在 PHP 5.3.29 安装上使用 PHPUnit 4.8。我们应用程序中的一些代码使用了弃用的mysql_*功能,PHPUnit 将这些实例的弃用通知转换为异常,从而使那些特定的测试用例失败。
现在我已经将 包含convertErrorsToExceptions="false"在 config.xml 中,但这似乎没有帮助,因为它仍在发生。
任何人都可以帮助阐明这里可能发生的事情吗?
干杯!
编辑:在gist.github.com上添加了示例文件
我有一个文件,其内容如下:
{application_name, [
{settings, [
{generic_1, [
{key_1, "value"},
{key_2, 1},
{key_3, [something, other]}
]},
{generic_2, [
{key_1, "value"},
{key_3, [something, other]}
]},
{{generic_2, specific_1}, [
{key_3, [entirely, different]}
]},
]}
]}
Run Code Online (Sandbox Code Playgroud)
现在我正在寻找一种方法来使用awk或sed(或其他东西)来解析它.我需要的是能够指定一个键,然后返回"blockname".
如果我想要key_3返回的所有设置如下:
generic_1 [something, other]
generic_2 [something, other]
specific_1 [entirely, different]
Run Code Online (Sandbox Code Playgroud)
什么是最好的方法来解决这个问题?