小编tri*_*id3的帖子

如何处理来自“不透明”类型的获取响应?

我正在尝试正确解释从 fetch 调用到 URL 的响应,我认为它是一个 json 字符串。我已经根据这里的类似帖子尝试了许多变体,但没有什么能让我使用有用的数据。这是一种尝试:

fetch('http://serverURL/api/ready/', {method: "POST", mode: "no-cors"})
    .then(function(response) { 
        response.json().then(function(data) {
            console.log('data:' + data);
        });
    })
    .catch(function(err) {
        console.log('Fetch Error :-S', err);
    });
Run Code Online (Sandbox Code Playgroud)

这会在控制台中返回一个语法错误:

SyntaxError: JSON.parse: JSON 数据第 1 行第 1 列的数据意外结束

所以也许它不是 JSON...如果我在 console.log 行上放置一个断点,并将鼠标悬停在响应(上面的行)上,我会看到带有各种字段的响应对象 (?):

来自调试器悬停的响应对象

不知道如何解释...status:0 表明它没有得到有效的响应。但是,如果我检查开发人员工具中的 Network 选项卡,然后单击 fetch 行,则状态为 200,并且响应窗口/JSON 部分会显示消息信息,如果您只是将 URL 放入浏览器 URL 中,您也会看到这些信息直接酒吧。与显示 JSON 字符串的“响应负载”部分一样:

{"msg": "API 已准备就绪。", "success": true}

所以......它看起来像json,不是吗?但是 fetch 无法将其作为 json 摄取?

这是另一种变体,但使用 response.text() 而不是 response.json()

fetch('http://serverURL/api/ready/', {method: "POST", mode: "no-cors"})
    .then((response) => {
        console.log(response);
        response.text().then((data) …
Run Code Online (Sandbox Code Playgroud)

javascript json fetch

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

awk/sed/grep删除与另一个文件中的字段匹配的行

我有一个file1,有几行(十行),一个更长的file2(~500,000行).尽管存在相同的字段子集,但每个文件中的行不相同.我想从file1中的每一行获取字段3-5,并搜索file2以获得相同的模式(只有这三个字段,按相同顺序 - 在file2中,它们属于字段2-4).如果找到任何匹配项,那么我想从file1中删除相应的行.

例如,file1:

2016-01-06T05:38:31 2016-01-06T05:23:33 2016006 120E A TM Current
2016-01-06T07:34:01 2016-01-06T07:01:51 2016006 090E B TM Current
2016-01-06T07:40:44 2016-01-06T07:40:41 2016006 080E A TM Alt
2016-01-06T07:53:50 2016-01-06T07:52:14 2016006 090E A TM Current
2016-01-06T08:14:45 2016-01-06T08:06:33 2016006 080E C TM Current
Run Code Online (Sandbox Code Playgroud)

文件2:

2016-01-06T07:35:06.87 2016003 100E C NN Current 0
2016-01-06T07:35:09.97 2016003 100E B TM Current 6303
2016-01-06T07:36:23.12 2016004 030N C TM Current 0
2016-01-06T07:37:57.36 2016006 090E A TM Current 399
2016-01-06T07:40:29.61 2016006 010N C TM Current 0
Run Code Online (Sandbox Code Playgroud)

......(以及500,000行)

所以在这种情况下,我想删除file1的第四行(就地).

以下是我要删除的行:

grep "$(awk …
Run Code Online (Sandbox Code Playgroud)

linux bash awk sed

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

如何使用非标准端口以非 root 身份运行 apache?

我需要让 apache 以非 root 用户身份运行,监听端口 8443,以便在 CentOS 7.3 系统上有一个新网站(在 localhost:8443 上)可用于内部安全扫描。我只了解 apache(在 Ubuntu 上)的基础知识,而且我不是 Web 管理员,因此不熟悉使其正常工作所需的许多选项/配置设置。

我有一个包含我的网站内容(需要 php)的目录(/webcontent),并且可以在那里托管各种必要的conf文件。但我在正确设置 httpd.conf 以使 apache 以本地用户身份运行时遇到了困难,启动时使用:

httpd -f /webcontent/conf/httpd.conf
Run Code Online (Sandbox Code Playgroud)

并已将日志设置为写入 /webcontent/logs (通过 ErrorLog 参数),但它随后抱怨没有对 /run/httpd 的写访问权限,因此实际上不会启动:

[Thu Feb 23 11:59:51.289587 2017] [auth_digest:error] [pid 25464] (13)权限被拒绝:AH01762:无法在文件 /run/httpd/authdigest_shm.25464 上创建共享内存段

我想这只是我可能必须让它运行的许多问题中的第一个,所以如果有人可以指出 httpd.conf (或其他地方?) 中所需的特定配置设置以使此方案正常工作,那就太好了赞赏。或者对运行 apache 的非 root 实例进行测试有任何其他建议。

apache localhost centos7

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

标签 统计

apache ×1

awk ×1

bash ×1

centos7 ×1

fetch ×1

javascript ×1

json ×1

linux ×1

localhost ×1

sed ×1