小编Xeo*_*eos的帖子

动态替换css文件(并将新样式应用于页面)

我有一个页面,<link>在标题中加载了名为的CSS light.css.我还有一个名为的文件dark.css.我想要一个按钮来交换页面的样式(css文件中有40个选择器,有些在两个文件中不匹配).

如何删除对light.cssJS的引用并删除所有应用的样式,然后dark.css从中加载并应用所有样式?我不能简单地重置所有元素,因为一些样式是通过不同的css文件应用的,有些是由JS动态生成的.没有重新加载页面,有没有一种简单而有效的方法呢?香草JS是首选,但我会使用jQuery进行后续处理,所以jQ也没关系.

html javascript css jquery

56
推荐指数
5
解决办法
7万
查看次数

"db.createUser不是函数","密码不能为空"

我正在尝试在MongoDB上设置身份验证.我auth=true在配置文件中取消注释并重新启动了服务器.通过mongo的第一个连接被拒绝了.第二个(紧接在第一个之后)经历了,我在日志中得到了这个:

Sat Apr 12 14:56:46 [initandlisten] connection accepted from 127.0.0.1:44001 #1
Sat Apr 12 14:56:46 [conn1] note: no users configured in admin.system.users, allowing localhost access
Run Code Online (Sandbox Code Playgroud)

在控制台中,我能够执行命令,但是如果我尝试遵循任何数量的教程(包括官方教程),我会db.createUser is not a function在执行db.createUser()password can't be empty执行时得到db.addUser():

Mongo输出

我传递的对象是:

{
    user: "username",
    pwd: "passphrase",
    roles: [ 
        { 
            role: "userAdminAnyDatabase", 
            db: "admin" 
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

mongodb

40
推荐指数
1
解决办法
5万
查看次数

在Python中从字典中删除键,返回新字典

我有一本字典

d = {'a':1, 'b':2, 'c':3}
Run Code Online (Sandbox Code Playgroud)

我需要删除一个密钥,比如c,并在一个函数调用中返回没有该密钥的字典

{'a':1, 'b':2}
Run Code Online (Sandbox Code Playgroud)

d.pop('c')将返回键值 - 3 - 而不是字典.

如果它存在,我将需要一个功能解决方案,因为这将进入理解

python methods dictionary

28
推荐指数
4
解决办法
2万
查看次数

MySQL使用where子句保留外连接 - 返回不匹配的行

我有两张桌子:pqpe.我想把LEFT OUTER JOIN桌子(pq)留在右边的桌子(pe)上.

  • pq具有主键列id
  • pe有两列主键,所以它可能有很多pqid或者没有
  • pe .uid列必须用于仅提取相关数据(WHERE pe.uid = "12345")
  • pe .data应该连接到每个pq .id行

表格如下:

pq:
id | data
1  | "abc"
2  | "efg"

pe:
pqid | uid   | data
2    | 54321 | "uvw"
2    | 12345 | "xyz"
Run Code Online (Sandbox Code Playgroud)

我可以使用以下查询将pq .id的前两行与pe .pqid进行匹配

SELECT pq.id, pq.data, pe.data FROM pq
    LEFT OUTER JOIN pe ON pq.id = pe.pqid
    ORDER BY pq.id LIMIT …
Run Code Online (Sandbox Code Playgroud)

mysql sql join left-join

15
推荐指数
1
解决办法
3万
查看次数

Google Cloud Messaging for Android库与Google Play服务

目前的Google GCM文档要求您安装Google Play服务并将其用于GCM(Google Cloud Messaging).该库是1.1MB,但我目前的.apk是这个大小的一半.我的应用程序旨在接收GCM并在屏幕上显示一些数据,因此我不需要Google Play服务的Maps API,G +登录等.我也不需要在获得GCM后能够回复服务器.

SDK Manager允许下载和安装独立的Google Cloud Messaging for Android软件包.这是在Google I/O 2013之前使用的,Play服务宣布的地方.

我的问题是:GPS的GCM和Android的独立GCM之间的性能差异是什么?我真的必须切换到GPS吗?独立GCM是否已被删除?我还可以使用独立GCM接收数据(最高4K)吗?

android android-c2dm

14
推荐指数
1
解决办法
1万
查看次数

我应该使用Redis的Pub和Sub单独连接吗?

我注意到Socket.io正在为Pub和Sub使用两个独立的连接到Redis服务器.是否可以改善性能?或者它只是向更有组织的事件处理程序和代码的转变?两个单独的连接和一个单独的连接用于发布和订阅有什么好处和缺点.

PS系统正在推送它正在接收的相同数量的消息.它将更新推送到服务器,这些服务器位于层次结构中的同一级别,因此没有主服务器,推送消耗消息的所有更新或从服务器.一台服务器将有大约4-8个订阅,它会将消息发送回这些服务器.

PSS这对于专门建立的作业队列来说更像是一项工作吗?我正在看Redis的原因.是我已经在其中保留了一些共享对象,这些对象被所有服务器使用.消息队列是否值得添加另一个网络连接?

message-queue event-handling redis socket.io

11
推荐指数
1
解决办法
5655
查看次数

如何在不将请求传递给Web服务器的情况下使用HAProxy发送响应

由于CORS(跨源资源共享),服务器正在接收数千个OPTIONS请求.现在,每个选项请求都被发送到其中一个服务器,这有点浪费,因为知道HAProxy可以在没有Web服务器帮助的情况下自己添加CORS头.

frontend https-in
    ...
    use_backend cors_headers if METH_OPTIONS
    ...

backend cors_headers
    rspadd Access-Control-Allow-Origin:\ https://www.example.com
    rspadd Access-Control-Max-Age:\ 31536000
Run Code Online (Sandbox Code Playgroud)

但是为了实现这一点,我需要在cors_headers后端指定至少一个实时服务器,该服务器仍将接收请求.

如何在不指定任何服务器的情况下处理后端中的请求?如何将请求传播到服务器,同时将响应发送到浏览器并保持连接活动?

http haproxy cors

11
推荐指数
2
解决办法
1万
查看次数

在PHP中加密字符串并在Node.js中解密

我通过Apache和Node.js服务器之间的不安全连接发送数据.我需要在PHP中加密数据并在Node.js中解密.我花了两天时间试图让它工作,但是我只是设法让消息签名工作,没有加密.我尝试通过AES128-CBC,AES256-CBC,DES,AES128,AES256作为算法,但没有什么效果好..

我在PHP中试过这个:

$data = json_encode(Array('mk' => $_SESSION['key'], 'algorithm' => 'SHA1', 'username' => $_SESSION['userid'], 'expires' => $expires));
$payload = openssl_encrypt($data, 'des', '716c26ef');
return base64_encode($payload);
Run Code Online (Sandbox Code Playgroud)

在Node.js中:

var enc_json = new Buffer(response[1], 'base64');
var decipher = crypto.createDecipher('des', '716c26ef');
var json = decipher.update(enc_json).toString('ascii');
json += decipher.final('ascii');
Run Code Online (Sandbox Code Playgroud)

除了错误的解密数据,我得到如下错误:

TypeError: error:0606508A:digital envelope routines:EVP_DecryptFinal_ex:data not multiple of block length

TypeError: error:0606506D:digital envelope routines:EVP_DecryptFinal_ex:wrong final block length
Run Code Online (Sandbox Code Playgroud)

我需要一个简单的加密,因为数据不是太敏感(没有密码或用户数据),但数据只能由收件人读取.密钥长度可以是任何东西,但加密/解密的过程必须尽可能简单,请不要使用IV.

javascript php encryption json node.js

9
推荐指数
2
解决办法
8629
查看次数

禁用亵渎过滤器以通过Web Speech API进行识别

我正在使用webkitSpeechRecognition实例访问Chrome中的本机语音识别.问题是Web Speech API规范没有涵盖亵渎性过滤的主题,但默认情况下,Google的Speech API启用了亵渎性过滤器.这不是一个主要问题 - 幸运的是,Web Speech API的默认过滤器显示第一个字母,并将其余部分隐藏在星号下.然而,有些情况下,以某个字母开头且具有一定长度的单词来自不同的cuss单词并猜测该人所说的内容可能无法给出准确的结果.

这里的问题是:如何控制Chrome中Web Speech API的亵渎过滤级别?JavaScript实例不会公开任何其他(特定于平台的)变量.实际的Speech API具有pfilter可以设置为0(无过滤)的URL参数,1(使用####过滤和替换单词)或2(使用星号过滤和替换除第一个字母以外的所有字符).此参数也为Chrome Extension开发人员公开,它位于SpeechInputStartOptions(但它是一个布尔变量).

PS SpeechInputStartOptions文档介绍了默认的Chrome过滤设置.我无法找到此设置或有关它所在位置的任何信息.即使理想情况下,解决方案也不应该让用户不得不做某事,找到适合它的Chrome浏览器设置仍然是一个突破.

javascript google-chrome webspeech-api

8
推荐指数
1
解决办法
1018
查看次数

使用HAproxy将标头添加到特定URL的响应中

我的HAproxy配置中有一个简单的条件(我试过这个用于前端后端):

acl no_index_url path_end .pdf .doc .xls .docx .xlsx
rspadd X-Robots-Tag:\ noindex if no_index_url
Run Code Online (Sandbox Code Playgroud)

它应该将no-robots标头添加到不应编入索引的内容中.但是WARNING在解析配置时它给了我这个:

acl 'no_index_url' will never match because it only involves keywords
    that are incompatible with 'backend http-response header rule'
Run Code Online (Sandbox Code Playgroud)

acl 'no_index_url' will never match because it only involves keywords
    that are incompatible with 'frontend http-response header rule'
Run Code Online (Sandbox Code Playgroud)

根据文档,rspadd可以在前端后端使用.的path_end是在中实施例中使用的前端.为什么我会收到此错误,这是什么意思?

load-balancing haproxy

8
推荐指数
1
解决办法
7932
查看次数