小编Nag*_*hab的帖子

至少一个安全组必须打开所有入口端口。AWS Glue 连接到 RDS

我仍在开始使用 AWS Glue,我正在尝试将其连接到托管在 RDS Aurora 上的可公开访问的 MySql 数据库以获取其数据。

所以我首先创建一个爬虫,然后在数据存储中创建一个新连接,如下面的屏幕截图所示: 在此处输入图片说明

我完成了其余部分并最终尝试运行爬虫,但出现以下错误: At least one security group must open all ingress ports.To limit traffic, the source security group in your inbound rule can be restricted to the same security group

我不确定我需要在附加到 RDS 的安全组中更改什么,但这是我现在对入站规则所拥有的内容:

在此处输入图片说明

您会注意到我在那里有一个指向同一个安全组的自引用规则。

出站规则将适用于所有流量。

知道我可能做错了什么吗?

amazon-web-services aws-glue

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

如何在 go 中展平嵌套的 json 结构

我从 mongo 获取嵌套数据,我想将其展平到一个结构中以将其存储在 csv 文件中。

数据如下:

{
    "_id" : "bec7bfaa-7a47-4f61-a463-5966a2b5c8ce",
    "data" : {
        "driver" : {
            "etaToStore" : 156
        },
        "createdAt" : 1532590052,
        "_id" : "07703a33-a3c3-4ad5-9e06-d05063474d8c"
    }
} 
Run Code Online (Sandbox Code Playgroud)

我想要最终得到的结构应该是这样的

type EventStruct struct {
    Id                  string      `bson:"_id"`
    DataId              string      `bson:"data._id"`
    EtaToStore          string      `bson:"data.driver.etaToStore"`
    CreatedAt           int         `bson:"data.createdAt"`
}
Run Code Online (Sandbox Code Playgroud)

这是行不通的,所以根据一些 SO 答案,我将其分解为多个结构:

// Creating a structure for the inner struct that I will receive from the query
type DriverStruct struct {
    EtaToStore  int     `bson:"etaToStore"`
}

type DataStruct struct {
    Id          string …
Run Code Online (Sandbox Code Playgroud)

go bson

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

在Go中为结构返回nil

我正在连接到数据库,获取一行,然后将其发送回用户。但是,return如果找不到该行或出现错误,我想做的就是声明。

因为我要返回一个结构,所以我不能返回nil,但得到了这个错误cannot use nil as type Item in return argument(Item是我的结构)

我在网上阅读到,如果我在return语句中使用指针并返回* Item而不是Item,那么我可以传递nil,当我尝试创建时item := *Item{}出现以下错误invalid indirect of Item literal (type Item)

我认为有一些解决方案,但我找不到,我真正想知道的是:

  • 如何返回指针* Item而不是Item
  • 还有另一种方法可以为结构返回nil吗?

这是我的代码:

package main

import (
    "fmt"
    "github.com/aws/aws-lambda-go/lambda"

  "github.com/aws/aws-sdk-go/aws"
  "github.com/aws/aws-sdk-go/aws/session"
  "github.com/aws/aws-sdk-go/service/dynamodb"
  "github.com/aws/aws-sdk-go/service/dynamodb/dynamodbattribute"
)

type Request struct {
    Name string `json:"name"`
}

type Item struct {
  Name string `json:"name"`
  Stock int `json:"stock"`
  Price float64 `json:"price"`
}

func Handler(request Request) (Item, error) {
  sess, err := session.NewSession(&aws.Config{
    Region: aws.String("us-west-2")},
  )

  // Create …
Run Code Online (Sandbox Code Playgroud)

go

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

如何在SVG中包含bootstrap glyphicon

我按照这个SO答案在我的SVG中包含glyphicons,但它不起作用.

这是我想要将图标实现为的SVG代码:

  <text
    ng-attr-x="{{node.width/2}}"
    ng-attr-y="{{node.height/2+5}}"
    text-anchor="middle"
    ng-attr-fill="{{(node.activity.act_task==3 || node.activity.act_task==4)?'#FFFFFF':'#000000';}}">
    <tspan x="130" dy="0em">&#e003</tspan>
    <tspan x="130" dy="1.2em" ng-show="node.activity.act_type == 1 && node.height > 30"><a target="_blank" href="http://{{node.activity.act_info_url}}" style="text-decoration: underline">{{node.activity.act_info}}</a></tspan>
  </text>
Run Code Online (Sandbox Code Playgroud)

我添加到我的css文件中:

svg text{
  font-family: 'Glyphicons Halflings';
}
Run Code Online (Sandbox Code Playgroud)

但这不起作用,它只显示&#e003文本而不是搜索图标,我之后是glyphicon-search图标.我也试过/e003&e003#e003,但没有任何运气.

有没有办法将glyphicons添加到svg组件中?

css svg

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

无法将请求正文解析为 json:无法识别的令牌

我有一个非常简单的 AJAX 代码,用于调用 AWS API 网关端点:

$.ajax({
        url: 'https://omitted.execute-api.ap-southeast-2.amazonaws.com/test/rec',
        type: 'post',
        data: {
            'zipcode': '1234',
            'url': 'www.google.com'
        },
        dataType: 'json',
        success: function (data) {
            console.info(data);
        }
    });
Run Code Online (Sandbox Code Playgroud)

我得到的回报是:

无法将请求正文解析为 json:无法识别的令牌“zipcode”:正在等待(“true”、“false”或“null”)`

数据应该是 JSON 格式,所以我做错了什么?

我也尝试过:

$.post('https://omitted.execute-api.ap-southeast-2.amazonaws.com/test/rec',
    {
        'zipcode': '1234',
        'url': 'www.google.com'
    }, 
    function(data, textStatus) {
      //data contains the JSON object
      //textStatus contains the status: success, error, etc
}, "json");

$.post('https://omitted.execute-api.ap-southeast-2.amazonaws.com/test/rec',
    'zipcode=1234&url=www.google.com', 
    function(data, textStatus) {
      //data contains the JSON object
      //textStatus contains the status: success, error, etc
}, "json");
Run Code Online (Sandbox Code Playgroud)

他们返回相同的结果。

ajax aws-api-gateway

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

通过 Composer 使用 PSR4 自动加载与 spl_autoload_register

我们正在构建一个新的 Slim 应用程序,并且希望在代码中使用 PSR4-Autoloading 和命名空间。

我们通过 Composer 找到了两种方法来做到这一点,即:

"autoload": {
    "psr-4": {
        "App\\Controller\\": "app/controllers",
        "App\\Middleware\\": "app/middleware",
        "App\\Model\\": "app/models"     
    }
},
Run Code Online (Sandbox Code Playgroud)

或者通过spl_autoload_register即:

spl_autoload_register(function ($class_name) {

  $filename = __DIR__ . DIRECTORY_SEPARATOR . str_replace('\\', DIRECTORY_SEPARATOR, $class_name) . '.php';
  require $filename;

});
Run Code Online (Sandbox Code Playgroud)

是什么决定了我们应该采用哪种方法?

php composer-php psr-4

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

如何使用 helm charts 将 docker 容器端口绑定到主机

我正在为 golang 编写一个简单的 docker 文件,但我仍然熟悉 docker,所以我知道我想做什么只是不知道该怎么做:

我现在(下面)所拥有的是公开端口 8080,但我想公开端口 80 但将其转发到端口 8080。

我知道我可以通过它来完成,docker run -p但我想知道是否有一种方法可以设置它Dockerfile或其他方式。我试图找到如何通过 Helm 做到这一点。

Dockerfile:

FROM scratch

COPY auth-service /auth-service

EXPOSE 8080

CMD ["/auth-service","-logtostderr=true", "-v=-1"]
Run Code Online (Sandbox Code Playgroud)

docker dockerfile kubernetes-helm

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

节点 Mongo db.runCommand 不是函数

我正在关注这个SO 问题以使用 Node 在 Mongo 上运行命令,我想运行的命令是:

db.runCommand( { serverStatus: 1, repl: 0, metrics: 0, locks: 0, wiredTiger: 
0, logicalSessionRecordCache: 0, transactions: 0, logicalSessionRecordCache: 
0, tcmalloc: 0, storageEngine: 0, opLatencies: 0, opcountersRepl: 0, 
network: 0, extra_info: 0, asserts: 0, globalLock: 0 } )
Run Code Online (Sandbox Code Playgroud)

但是当我尝试类似的东西时:

db.runCommand( { serverStatus: 1 }, function(err, data) {
    if (!err)  console.log(data);
});
Run Code Online (Sandbox Code Playgroud)

或者

db.command( { serverStatus: 1 }, function(err, data) {
    if (!err)  console.log(data);
});
Run Code Online (Sandbox Code Playgroud)

甚至是问题中的那个

db.command({ distinct: "Messages", key: "session" }, function (err, data) …
Run Code Online (Sandbox Code Playgroud)

mongodb node.js

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

通过电子邮件限制Firebase用户

我有一个客户希望能够列出可以访问数据的受限电子邮件。因此,进入该应用程序的其他任何人都根本无法读取/写入任何数据(理想情况下甚至无法登录,但我认为Firebase无法实现此功能?)。关于如何解决这个问题的任何想法?我曾想过要有一系列被接受的电子邮件,并检查它们的电子邮件是否存在于安全规则中,但这似乎不起作用。我的数据库中有以下内容:

"validEmails": ["test@test.com"]

然后在安全规则中:

".read": "root.child('validEmails').val().indexOf(auth.token.email) > -1"

但是看来您不能indexOf在这些安全规则中使用。

也许我需要有一个可接受的电子邮件列表,然后在用户注册时检查它是否在该列表中并将其UID添加到接受列表中?我想我可以通过云功能执行此操作?

任何帮助将非常感激。

干杯

firebase firebase-security firebase-authentication

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

为Google Cloud Functions创建开发和登台环境

我正在开发一个具有开发环境和登台环境的项目,因此每个环境都有自己的服务器,数据库,每个环境也应该有自己的Pub/Subs和Cloud Functions.

我有一个称为jsonToCsv导出一个具有相同名称的函数的云函数jsonToCsv,我想部署相同的代码但是使用不同的名称jsonToCsv_staging,但是,GCloud将不允许我导出名称与云函数不同的函数

ERROR: (gcloud.beta.functions.deploy) OperationError: code=3, 
message=Function load error: Node.js module defined by file index.js is 
expected to export function named jsonToCsv-staging
Run Code Online (Sandbox Code Playgroud)

来自AWS的背景,我认为有一种方法可以让我调用不同版本的Cloud Function(即最新的将是开发,我可以用staging另一个版本标记一个版本production)但我不能找到一种方法来做到这一点.

我能想到解决这个问题的一种方法是使用具有相同名称的相同函数,但使用不同的Pub/Subs或触发环境变量的触发器.如果开发人员想要在不影响登台的情况下部署一些开发代码,这将无效.你对此有何看法?在这种情况下,最佳做法是什么?

google-cloud-platform google-cloud-pubsub google-cloud-functions

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