小编Gra*_*yda的帖子

Buffer.toString()支持哪些编码?

我正在node.js中编写一个应用程序,看到我可以这样做:

var buf = new Buffer("Hello World!")
console.log(buf.toString("hex"))
console.log(buf.toString("utf8"))
Run Code Online (Sandbox Code Playgroud)

我知道'ascii'是一种编码类型(它需要一个ASCII码,比如112把它变成一个p),但是我可以做什么其他类型的编码?

node.js

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

Electron中的Google广告?

我正在写一个电子应用程序,我想放置谷歌广告,但我不知道如何正确地做到这一点.

我已经创建了我的广告代码段并将其放入我的应用中.默认代码段//googleads.g.doubleclick.net ...用作adsbygoogle.js文件的网址,因此我必须将其更改为https://googleads.g.doubleclick.net ...因为Electron应用程序用于file:///加载索引页面.

但在这之后,adsbygoogle.js文件会引发400错误,这很奇怪.

最重要的是,我不确定如何处理用户点击广告.要获得我网站的链接,我必须创建一个指向的链接javascript:shell.openExternal('https://example.com'),但我不确定如何使用外部广告.

那么如何在我的Electron应用中添加广告?

javascript adsense electron

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

我可以获得 GitLab 中的 wiki 页面列表吗?

我正在编写一个使用 GitLab API 的应用程序,我想列出 wiki 中的页面。我可以执行类似http://gitlab/username/project/wikis/home.md 的操作来获取单个文件的源,并使用http://gitlab/username/project/wikis/pages查看所有页面,但我由于 500 错误,无法执行http://gitlab/username/project/wikis/pages.md 。

有没有办法可以检索 wiki 中的文件列表?

gitlab

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

解组可能会也可能不会返回数组的JSON?

我正在从第三方网站(家庭电力使用)中检索JSON,并且根据我从网站请求的内容,返回的JSON可能是也可能不是数组.例如,如果我请求我的智能电表列表,我会得到这个(由于大尺寸,结果被截断):

{"gwrcmds":{"gwrcmd":{"gcmd":"SPA_UserGetSmartMeterList","gdata":{"gip":{"version":"1"...
Run Code Online (Sandbox Code Playgroud)

其中gwrcmd是单个元素.

但如果我要求过去半小时用电,我会得到这个:

{"gwrcmds":{"gwrcmd":[{"gcmd":"DeviceGetChart","gdata":{"gip":{"version":"1" ...
Run Code Online (Sandbox Code Playgroud)

看看gwrcmd现在是一个数组?

在我的Go应用程序中,我有一个看起来像这样的结构(再次,截断,因为它持续了一段时间."Version"下面有更多的子结构和属性:

type Response struct {
    Gwrcmds struct {
        Gwrcmd struct {
            Gcmd  string
            Gdata struct {
                Gip struct {
                    Version string
Run Code Online (Sandbox Code Playgroud)

如果gwrcmd是数组,则Gwrcmd需要是a []struct { },但如果不是,则只是常规的struct { }

问题是json.Unmarshal如果JSON有一个数组且结构没有切片(反之亦然),则只返回错误.

我是否需要创建一个复制第一个结构的第二个结构(除了[]struct { }替代结构),或者有更好的方法吗?我想到了接口的东西,但我还没有碰到那些,所以我不是百分之百确定它们.

json go

5
推荐指数
2
解决办法
1227
查看次数

Laravel验证会覆盖我的价值观吗?

我有一个Laravel 5.8(也已通过Laravel 6.1.0测试)作业,该作业会定期从NOAA间隔器天气预报中心下载文件。作为工作的一部分,我想先验证一些属性,然后再将它们插入数据库,如果情况不对,则使工作失败。

SWPC文件是一个JSON文件,其中包含如下所示的对象数组:

  [{
    time_tag: "2019-10-02T13:39:00",
    bt: 4.45,
    bz_gsm: 0.09,
    // (there are lots of other, irrelevant fields here)
  }, {
    // (more of the same data here, repeated dozens of times)
  }]
Run Code Online (Sandbox Code Playgroud)

我工作的主要部分是这样的:

  [{
    time_tag: "2019-10-02T13:39:00",
    bt: 4.45,
    bz_gsm: 0.09,
    // (there are lots of other, irrelevant fields here)
  }, {
    // (more of the same data here, repeated dozens of times)
  }]
Run Code Online (Sandbox Code Playgroud)

根据文档,调用validate()手动创建的Validator的行为应与验证请求对象的行为相同(即:“如果验证失败,则用户将自动重定向,如果是AJAX请求,则将返回JSON响应)将返回”)

然而与上面的代码,验证通过,但是time_tagbtbz_gsm字段是空值。如果删除time_tag …

php laravel

4
推荐指数
1
解决办法
196
查看次数

多行CSS渐变文本不起作用

我正在为WordPress编写一个主题,并且正在使用Webkit文本渐变来获取链接.它到目前为止工作,但只要链接环绕到下一行,只有链接的上半部分可见.

示例代码:

#page a:link {
  background: -webkit-repeating-linear-gradient(top, #cade43, #8a953e) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-weight: bold;
}
#page {
    background: black;
    width: 100px;
}
Run Code Online (Sandbox Code Playgroud)
<div id="page">
    <a href="#">This is a long link that stretches over two lines</a>
</div>
Run Code Online (Sandbox Code Playgroud)

JSFiddle的例子:https://jsfiddle.net/6ap3j5o5/2/

JSFiddle示例. 选择底部两行以显示它们确实存在

上面的图片显示在我的浏览器中(Chrome 43.0.2357.37 beta-m).我用光标选择了最后两行,表明它们确实存在并且没有被DIV切断

我该怎么做才能解决这个问题?

html css webkit

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

如何在AngularJS中重新加载ng-include?

我正在通过创建一个与我在节点中编写的系统交互的站点来学习AngularJS.该网站的一部分要求我从两个不同的地点获取信息(例如,我自己的存储名称数据库中的城镇名称,以及来自其他网站的天气).我正在使用此代码段来获取数据:

<tr ng-repeat="town in towns | filter:query | orderBy:orderBy">
    <td ng-bind="town.ShortName"></td>
    <td ng-include src="'http://example.com/weather/' + town.ID'"></td>
</tr>
Run Code Online (Sandbox Code Playgroud)

这很有效,因为我得到了城镇名称(例如墨尔本)和天气数据.接下来,我添加了socket.io来监听事件(例如weatherupdate):

  <script type="text/javascript">
    var socket = io.connect();
    socket.on("weatherupdate", function() {
      angular.element("#listController").scope().reloadView()
    })
  </script>
Run Code Online (Sandbox Code Playgroud)

这是我的控制器中的重载功能:

  $scope.reloadView = function() {
        $route.reload();
  }
Run Code Online (Sandbox Code Playgroud)

这在大多数情况下都有效.如果我对小镇ShortName进行了更改,下次发出"weatherupdate"时,视图会闪烁(就像它正在重新加载)和新的town.ShortName会显示在td.

但是,天气不会改变.如果我手动重新加载页面(使用F5或javascript函数重新加载整个页面),新天气就可以正常获取,但是当该功能自动重新加载路径时,一切ng-include src都会更新.

我也尝试过添加

$templateCache.remove($route.current.templateUrl);
Run Code Online (Sandbox Code Playgroud)

只是上面$route.reload()但无济于事.我想我可以$ http.get天气数据并操纵它,但我认为ng-include这将很好,很容易

javascript angularjs

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

使用 ejs + emailjs 时,base64 图像不显示在 Outlook 中

当各种事件发生时,我混合使用ejsemailjs在我的 Node.js 应用程序中发送电子邮件。我想在发送电子邮件时将 Base64 图像(一个小徽标)嵌入到电子邮件中,但 Outlook 和 Gmail(加上 Google 的 Inbox)都无法呈现该图像。

我使用这段代码来查找图像的 mime 类型并将 base64 字符串组合在一起:

MyApp.prototype.ImageToBase64 = function(image) {
  var mime = require("mime")
  file = fs.readFileSync(__dirname + "/images/" + image, { encoding: 'base64'})
  return 'data:' + mime.lookup(image) + ';base64,' + file;
}
Run Code Online (Sandbox Code Playgroud)

这非常有用,因为我可以将生成的字符串复制并粘贴到浏览器中并查看图像。但是当我通过 emailjs 发送电子邮件时,Outlook 将+s 转换为&#43;. 当我在 Gmail 中“查看原始内容”时,base64 被分成“块”。每个块都位于换行符上,并且每行以 结尾=。如果我采用 Gmail 的版本并删除=换行符,然后将其粘贴到我的浏览器中,则整个图片可以完美加载,但它只是拒绝加载其他任何地方,无论用户是否在我的联系人列表中。

这是我用来发送电子邮件的代码:

// Host, username, password and SSL (false) all set above here
server.send({ …
Run Code Online (Sandbox Code Playgroud)

email outlook ejs node.js

0
推荐指数
1
解决办法
6999
查看次数

标签 统计

javascript ×2

node.js ×2

adsense ×1

angularjs ×1

css ×1

ejs ×1

electron ×1

email ×1

gitlab ×1

go ×1

html ×1

json ×1

laravel ×1

outlook ×1

php ×1

webkit ×1