小编Ble*_*ess的帖子

替换元素中特定位置的元素而不改变它

如何在不改变数组的情况下完成以下操作:

let array = ['item1'];
console.log(array); // ['item1']
array[2] = 'item2'; // array is mutated
console.log(array); // ['item1', undefined, 'item2']
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,array变量是变异的.如何在不改变阵列的情况下执行相同的操作?

javascript arrays immutability ecmascript-6

31
推荐指数
6
解决办法
3万
查看次数

如何在python3中使用ldap3绑定(验证)用户

我正在尝试使用ldap3版本'0.9.7.4' 将一些代码更新为python3 .(https://pypi.python.org/pypi/ldap3)

以前,我使用python-ldap和python2来验证这样的用户:

import ldap
address = "ldap://HOST:389"
con = ldap.initialize(address)
base_dn = "ourDN=jjj"
con.protocol_version = ldap.VERSION3
search_filter = "(uid=USERNAME)"
result = con.search_s(base_dn, ldap.SCOPE_SUBTREE, search_filter, None)  
user_dn = result[0][0]  # get the user DN
con.simple_bind_s(user_dn, "PASSWORD")
Run Code Online (Sandbox Code Playgroud)

这将正确返回(97, [], 2, [])正确的密码,并ldap.INVALID_CREDENTIALS使用不正确的密码引发绑定尝试.

ldap3在python3中使用我正在做以下事情:

from ldap3 import Server, Connection, AUTH_SIMPLE, STRATEGY_SYNC, ALL
s = Server(HOST, port=389, get_info=ALL)
c = Connection(s, authentication=AUTH_SIMPLE, user=user_dn, password=PASSWORD, check_names=True, lazy=False, client_strategy=STRATEGY_SYNC, raise_exceptions=True)
c.open()
c.bind()
Run Code Online (Sandbox Code Playgroud)

它引发了以下异常:

ldap3.core.exceptions.LDAPInvalidCredentialsResult: LDAPInvalidCredentialsResult - …
Run Code Online (Sandbox Code Playgroud)

python ldap python-3.x ldap3

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

是否可以在 GitHub 操作中的操作之间保留 WORKDIR?

我今天早上醒来收到 GitHub Actions BETA 邀请(wooo)并开始玩它,目的是迁移我目前在 CircleCI 上运行的一些简单的构建、测试和部署管道。

我仍在尝试了解 Actions,但我想到的流程是,在推送之后,工作流中的第一个 Action 将启动一个 Docker 容器。在该容器内,我将运行一些简单的构建过程,例如最小化资产和删除人工制品。然后,下一个操作将对构建运行一些测试。管道中的下一个操作将部署到多个环境之一,具体取决于我推送到的分支。

我已经按照https://developer.github.com/actions/creating-github-actions/creating-a-docker-container/ 上的文档进行操作,并有一个基本的工作流程,可以启动 Docker 容器并在其中运行一些构建命令WORKDIR. 我也可以从内部运行部署(通过 rsync)WORKDIR

但是,我想将其拆分为单独的步骤/操作,但我无法找到解决此问题的方法。

本质上,这类似于我正在使用的 CircleCI 作业/工作流模型。但是,使用 CircleCI,第一个作业运行构建,然后在整个工作流的其余部分中保留生成的目录结构,如下所示:

# Persist dist directory
  - persist_to_workspace:
      root: ~/project
      paths:
        - .
Run Code Online (Sandbox Code Playgroud)

所以,我有点将 CircleCI 的 Jobs 等同于 GitHub 的 Actions,这可能是错误的做法?本质上,我想知道的是我是否可以WORKDIR在第一个 Action 的 Docker 容器中保留 a并使其WORKDIR可用于后续的 Action。

这是可能的,还是我想像 GitHub Actions 可以做的事情?

谢谢!

github github-actions

10
推荐指数
2
解决办法
4263
查看次数

VS Code Vim:你如何突出显示当前行?

如何使用Vim VS Code突出显示当前行?

这个功能真棒.任何人都知道在Vim VS Code中是否可以进行此配置?http://vim.wikia.com/wiki/Highlight_current_line

特别是在光标移动后停留的高亮显示:

:nnoremap <silent> <Leader>l ml:execute 'match Search /\%'.line('.').'l/'<CR>
Run Code Online (Sandbox Code Playgroud)

vim visual-studio-code

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

使用Box与JWT(服务器身份验证)

我使用Box API JWT服务器身份验证:

        IAccessTokenCache accessTokenCache = new InMemoryLRUAccessTokenCache(100);

        Reader reader = new FileReader("D:\\config.json");
        BoxConfig boxConfig = BoxConfig.readFrom(reader);


        BoxAPIConnection api = BoxDeveloperEditionAPIConnection.getAppUserConnection(USER_ID,boxConfig);
Run Code Online (Sandbox Code Playgroud)

但是盒子例外:

{"error":"unauthorized_client","error_description":"This app is not authorized by the enterprise admin"}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

jwt box

7
推荐指数
2
解决办法
3133
查看次数

如何在 Github Actions 中访问 SECRETS 的价值?

我正在尝试访问SECRET发送到 GitHub 操作的s的值,但我很挣扎。[FILTERED]无论键或原始值是什么,每次都会返回值。

我可以ENVIRONMENT VARIABLES毫无问题地访问,所以我一定是在其他地方搞砸了。

本质上,我想要做的是向我的操作/容器发送一个 ssh 密钥,但是在将任何其他密钥/值作为秘密发送时我遇到了同样的问题。

我的(简化的)GitHub Action 如下:

action "Test" {
  uses = "./.github/actions/test"
  secrets = [
    "SSH_PRIVATE_KEY",
    "SSH_PUBLIC_KEY",
  ]
  env = {
    SSH_PUBLIC_KEY_TEST = "thisisatestpublickey"
  }
}
Run Code Online (Sandbox Code Playgroud)

Dockerfile:

FROM ubuntu:latest

# Args
ARG SSH_PRIVATE_KEY
ARG SSH_PUBLIC_KEY
ARG SSH_PUBLIC_KEY_TEST

# Copy entrypoint
ADD entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"]
Run Code Online (Sandbox Code Playgroud)

入口点.sh:

#! /bin/sh

SSH_PATH="$HOME/.ssh"

mkdir "$SSH_PATH"
touch "$SSH_PATH/known_hosts"

echo "$SSH_PRIVATE_KEY" > "$SSH_PATH/id_rsa"
echo "$SSH_PUBLIC_KEY" > "$SSH_PATH/id_rsa.pub"
echo "$SSH_PUBLIC_KEY_TEST" > "$SSH_PATH/id_rsa_test.pub" …
Run Code Online (Sandbox Code Playgroud)

github github-actions

7
推荐指数
1
解决办法
3872
查看次数

为什么不能复制包含 Box&lt;T&gt; 的结构?

我最近读到的一篇文章指出,将 a 保存为字段的结构Box<T>不是Copy.

这让我很困惑,因为我认为任何大小已知的类型都可以存储在堆栈上 - 因此是Copy.

的大小不是Box总是一样吗?我认为它只是对堆分配内存的引用 - 因此总是具有相同的大小。

struct copy reference rust

7
推荐指数
0
解决办法
3297
查看次数

使用JMH计算指标

如何使用JMH计算CPU时间和内存量?例如,我有:代码:

@State(Scope.Thread)
@BenchmarkMode(Mode.All)
public class JMHSample_My {

    int x = 1;
    int y = 2;

    @GenerateMicroBenchmark
    public int measureAdd() {
        return (x + y);
    }

    @GenerateMicroBenchmark
    public int measureMul() {
        return (x * y);
    }

    public static void main(String[] args) throws RunnerException {
        Options opt = new OptionsBuilder()
                .include(".*" + JMHSample_My.class.getSimpleName() + ".*")
                .warmupIterations(5)
                .measurementIterations(5)
                .forks(1)
                .build();

        new Runner(opt).run();
    }
}
Run Code Online (Sandbox Code Playgroud)

结果:

Benchmark                  Mode   Samples         Mean   Mean error    Units
JMHSample_My.measureAdd    thrpt         5  1060579.757    39506.950   ops/ms

JMHSample_My.measureMul    thrpt         5  1046872.684    79805.116 …
Run Code Online (Sandbox Code Playgroud)

java benchmarking cpu-usage jmh

6
推荐指数
1
解决办法
3363
查看次数

在NiFi中是否可以通过FetchS3Object处理器有选择地读取?

在Apache NiFi中,使用FetchS3Object从S3存储桶读取,我发现它可以读取存储桶中的所有对象并添加它们.可能吗:

  1. 要将处理器配置为只读取现在添加的对象,而不是已经存在的对象?
  2. 如何让它读取存储桶中的特定文件夹?

NiFi看起来很棒,只是缺少他们的文档中至少流行的处理器的例子.

amazon-s3 apache-nifi

6
推荐指数
1
解决办法
3388
查看次数

为分析平台设计GraphQL架构

我刚开始探索GraphQL作为我的分析平台API层的一个选项.

我的UI主要是从表格和图表构建的.大多数情况下,数据表示按维度分组的某些数据库列.

我从Microsoft 找到了以下文章https://www.microsoft.com/developerblog/2017/09/28/data-independent-graphql-using-view-model-based-schemas/,描述了他们对如何吮吸的看法应该设计GraphQL模式(见下文).

type Query {
  channels(source: String!, query:String!, appId:String!, apiKey:String!): [Channel]
  lineCharts(source: String!, query:String!, appId:String!, apiKey:String!, filterKey:String, filterValues:[String]): [LineChart]
  pieCharts(source: String!, query:String!, appId:String!, apiKey:String!): [PieChart]
  barCharts(source: String!, query:String!, appId:String!, apiKey:String!, filterKey:String, filterValues:[String]): [BarChart]
}

type Channel {
  name: String
  id: Int
}

type LineChart {
  id: String
  seriesData : [Series]
}

type PieChart {
  id: String
  labels: [String]
  values: [Int]
}

type BarChart {
  id: String
  seriesData : [Series]
}

type Series {
  label: String
  x_values: …
Run Code Online (Sandbox Code Playgroud)

schema analytics graphql

6
推荐指数
1
解决办法
976
查看次数