小编Val*_*res的帖子

Gulp浏览器同步只能工作一次

我在我的一个项目上尝试了Gulp,我想像Grunt手表一样运行它.这意味着,一旦完成所有操作,它必须观察较少的文件和js文件,lint,合并,编译和刷新浏览器.

我设法使用gulp-browser-sync工作但由于某种原因它只能工作一次.我对我的.less文件进行了更改,浏览器重新加载.然后,第二次更改,它确实编译但没有重新加载发生.

这是日志:

[BS] Serving files from: ./
[09:47:26] Starting 'css-clean'...
[09:47:26] Finished 'css-clean' after 16 ms
[09:47:26] Starting 'styles'...
[BS] 1 file changed (styles.min.css)
[09:47:27] Finished 'styles' after 624 ms
[09:47:27] Starting 'styles-watch'...
[BS] Reloading Browsers...
Run Code Online (Sandbox Code Playgroud)

当我第二次点击保存时:

[09:47:31] Starting 'css-clean'...
[09:47:31] Finished 'css-clean' after 3.39 ms
[09:47:31] Starting 'styles'...
[BS] 1 file changed (styles.min.css)
[09:47:32] Finished 'styles' after 362 ms
Run Code Online (Sandbox Code Playgroud)

至于JS,它一直都在工作.没有任何问题,即使在完成样式任务之后,JS更改仍然会正确地触发重新加载.真的只是有问题的风格.

这是gulpfile.js

var gulp = require('gulp'),
    autoprefixer = require('gulp-autoprefixer'),
    less = require('gulp-less'),
    minifycss = require('gulp-minify-css'),
    concat = require('gulp-concat'),
    jshint …
Run Code Online (Sandbox Code Playgroud)

javascript gulp gulp-less gulp-watch

12
推荐指数
3
解决办法
4888
查看次数

docker-compose 相当于 Docker Build --secret 参数

我们使用此处详述的技术以安全的方式将主机环境变量公开给 Docker 构建。

# syntax=docker/dockerfile:1.2
FROM golang:1.18 AS builder

# move secrets out of the build process (and docker history)
RUN --mount=type=secret,id=github_token,dst=/app/secret_github_token,required=true,uid=10001 \
    export GITHUB_TOKEN=$(cat /app/secret_github_token) && \
    <nice command that uses $GITHUB_TOKEN>
Run Code Online (Sandbox Code Playgroud)

这个命令来构建图像:

# syntax=docker/dockerfile:1.2
FROM golang:1.18 AS builder

# move secrets out of the build process (and docker history)
RUN --mount=type=secret,id=github_token,dst=/app/secret_github_token,required=true,uid=10001 \
    export GITHUB_TOKEN=$(cat /app/secret_github_token) && \
    <nice command that uses $GITHUB_TOKEN>
Run Code Online (Sandbox Code Playgroud)

以上效果完美。

现在我们还有一个在 CI 中运行的 docker-compose 文件需要修改。但是,即使我确认该作业中存在 ENV 变量,我也不知道如何将环境变量分配给指定github_token的秘密 ID。

换句话说,可以接受具有秘密 ID 的环境变量映射的等效 …

environment-variables docker dockerfile docker-compose

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

PHP和Paw REST Client之间的哈希值不相似

我正在构建一个HMAC API,我在使用Paw测试散列时遇到了问题.

在Paw我有这个有效载荷:

GET:/hello/world:"":9a6e30f2016370b6f2dcfb6880501d7f2305d69bout
Run Code Online (Sandbox Code Playgroud)

和定制HMAC-SHA256变量(实际上起到这样,设置它在X-哈希报头.

X-Hash: 4Cq2yehWumDcUk1dYyfhm6qWjJVBkOCB8o12f5l0WGE=
Run Code Online (Sandbox Code Playgroud)

在我的PHP API中,我有同样的事情:

GET:/hello/world:"":9a6e30f2016370b6f2dcfb6880501d7f2305d69bout
Run Code Online (Sandbox Code Playgroud)

和使用:

hash_hmac('sha256', $this->getPayload(), '9a6e30f2016370b6f2dcfb6880501d7f2305d69bout', false);
Run Code Online (Sandbox Code Playgroud)

所以在比较哈希时:

Paw: 4Cq2yehWumDcUk1dYyfhm6qWjJVBkOCB8o12f5l0WGE=
PHP: 6961b9d1f6e986c49d963cbebd691fa68dfa59b4ce3b7f05320c2d43eae3c7c3
Run Code Online (Sandbox Code Playgroud)

他们是非常不同的.知道为什么会这样吗?

更新

爪子代码:

function evaluate(context){
  var loc = getLocation(context.getCurrentRequest().url);

  var payload = "";
  payload += context.getCurrentRequest().method + ':';
  payload += loc.pathname + ':';
  payload += JSON.stringify(context.getCurrentRequest().body) + ':';
    payload += "9a6e30f2016370b6f2dcfb6880501d7f2305d69bout"; // Private key
  return payload;
};

function getLocation(href) {
    var match = href.match(/^(https?\:)\/\/(([^:\/?#]*)(?:\:([0-9]+))?)(\/[^?#]*)(\?[^#]*|)(#.*|)$/);
    return match && {
        protocol: match[1],
        host: match[2],
        hostname: match[3],
        port: match[4],
        pathname: match[5], …
Run Code Online (Sandbox Code Playgroud)

php sha256 hmac paw-app

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

git 仅克隆当前目录根目录下的一个子目录

我的 Git 存储库中有几个文件夹:

folder1/suba
folder2/subb
folder3/subc
Run Code Online (Sandbox Code Playgroud)

在本地,我的网络服务器上有公共文件夹。

http://domain.com/ 
Run Code Online (Sandbox Code Playgroud)

指向该文件夹

~/apps/appname/public
Run Code Online (Sandbox Code Playgroud)

我想有效地对服务器上的文件夹folder3/subc进行git 克隆。public现在我知道稀疏结帐,但保留了文件夹层次结构(就像这样~/apps/appname/public/folder3/subc)。

我不想要这个层次结构,并且想将folder3/subc 的内容直接签出到公共文件夹中。

那可能吗?

git directory sparse-matrix git-clone

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

为什么空白字符串的json_encode将其添加到数组中?

我已经在PHP 5.6上克服了这种行为(在PHP 5.4中也相同,直到7.0).

$note = new SimpleXMLElement('<Note></Note>');
$note->addChild("string0", 'just a string');
$note->addChild("string1", "abc\n\n\n");
$note->addChild("string2", "\tdef");
$note->addChild("string3", "\n\n\n");
$note->addChild("string4", "\t\n");

$json = json_encode($note, JSON_PRETTY_PRINT);

print($json);
Run Code Online (Sandbox Code Playgroud)

输出:

{
    "string0": "just a string",
    "string1": "abc\n\n\n",
    "string2": "\tdef",
    "string3": {
        "0": "\n\n\n"
    },
    "string4": {
        "0": "\t\n"
    }
}
Run Code Online (Sandbox Code Playgroud)

这种行为背后一定有理由,我想了解.而且,如果你知道一种强制它对文本和空格字符串表现相同的方法,我将非常感谢你分享你的想法!

编辑.这是你可以运行的代码片段:http://sandbox.onlinephpfunctions.com/code/d797623553c11b7a7648340880a92e98b19d1925

php json simplexml

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