小编kke*_*ley的帖子

在AWS CDK中执行代码之前如何等待堆栈完成?

我正在尝试 AWS CDK,但当我尝试执行依赖于堆栈完成的代码块时,我陷入了困境。

这是我当前的代码:

class Application extends cdk.Construct {
    constructor(scope: cdk.Construct, id: string) {
        super(scope, id);
        const webStack = new WebsiteStack(app, `website-stack-${id}`, { stage: id })
        const buildStack = new CodeBuildStack(app, `codebuild-stack-${id}`, { stage:id, bucket: webStack.websiteBucket, distribution: webStack.websiteDistribution });
        this.generateBuildParameter(id, webStack, buildStack)
    }

    generateBuildParameter(id: string, webStack: WebsiteStack, buildStack: CodeBuildStack) {
        const buildParam = {
            projectName: buildStack.buildProject.projectName,
            sourceVersion: id,
            environmentVariablesOverride: [
              { name: "STAGE", value: id, type: "PLAINTEXT" },
              { name: "WEBSITE_BUCKET", value: webStack.websiteBucket.bucketName, type: "PLAINTEXT" },
              { name: "CLOUDFRONT_DISTRIBUTION_ID", value: …
Run Code Online (Sandbox Code Playgroud)

typescript aws-cdk

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

AWS Cloudformation定义Cloudfront的安全策略

我正在努力在cloudfront的cloudformation文档中找到安全策略选项卡.有什么办法可以将安全策略设置为TLS1.1_2016吗?因为默认值是TLSv1.

在此输入图像描述

谢谢!

amazon-web-services amazon-cloudfront aws-cloudformation

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

GO 时间字符串中的“m=+”是什么?

我正在尝试使用 Google OAuth2,并且在我的刷新令牌到期时遇到了这个问题。它来自 2018-10-15 15:42:37.5989253 +1100 AEDT m=+3610.688917401

我知道这是一种时间格式,但我找不到任何有关m=+任何地方的信息。是否由 Google 内部使用?我试图用它来解析它,time.RFC3339但你可以猜到,它忽略了m=+. 它说

解析时间“2018-10-15 15:42:37.5989253 +1100 AEDT m=+3610.688917401”为“2006-01-02T15:04:05Z07:00”:无法解析:“15.AE+07:00”:35.AE+1059210DT1001 3610.688917401" 为 "T"

那么m=+ 时间字符串中的这个是什么?

time go

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

React 路由参数自动解码字符串

您好,反应路由器参数会自动解码字符串吗?

例如我有这条路线

<Route path="/callback/:url"/>
Run Code Online (Sandbox Code Playgroud)

当我用它来称呼它时C5jb20%3D

C5jb20=当我 console.log() 时它会打印该参数

这是预期的行为吗?我可以更改此行为以便仍然获得编码的字符串吗?

谢谢!

reactjs react-router

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

FCM 带有用户头像的推送通知

我正在尝试创建一个推送通知,例如 WhatsApp 或 Gmail,其中用户头像出现在通知中。有没有办法在react-native中做到这一点,特别是使用expo?

这是我的 fcm 有效负载

{
"GCM": "{ \"notification\": { \"title\": \"Sender1\" }, \"text\": \"test message\" } }"
}
Run Code Online (Sandbox Code Playgroud)

这是我从谷歌得到的一个例子,我想实现它。

在此输入图像描述

react-native expo

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

在没有自定义 docker 映像的情况下在代码构建中缓存 go 模块

TL; 博士

如何使用 AWS 提供的映像 (Go 1.12) 在代码构建中缓存我的模块?

背景

我正在尝试使用 AWS 的 go 映像 (1.12) 在 codebuild 中缓存 go 模块。

尝试缓存 /go/pkg/mod

深入挖掘后,我发现/go/pkg该图像中没有文件夹。因此,当我尝试缓存时,/go/pkg它会抛出错误。

错误挂载 /go/pkg/mod: 符号链接 /codebuild/local-cache/custom//go/pkg/mod /go/pkg/mod: 没有这样的文件或目录

即使在我运行之后go mod download(这将创建/go/pkg/mod,它也不会缓存文件夹,因为 codebuild 无法更早地安装它)。

这是我的 codebuild.yml

version: 0.2

phases:
  install:
    runtime-versions:
      golang: 1.12
      nodejs: 10
    commands:
      - npm install
  build:
    commands:
      - go build -ldflags="-s -w" -o api/bin/main api/main.go
cache:
  paths:
    - /go/src/**/*
    - /go/pkg/mod/**/*
Run Code Online (Sandbox Code Playgroud)

试图缓存 ./vendor

我还尝试缓存 ./vendor 文件夹,它不会在代码构建中引发任何错误。但是,我认为它不会缓存任何东西,因为构建时间不会减少。它还说它忽略了符号链接。

警告:忽略符号链接/codebuild/output/src074479210/src/github.com/kkesley/myrepo/vendor go:find …

caching go amazon-web-services aws-codebuild

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

JS fetch 是否可以不等待响应?

我有一个日志记录 API,它在链接之前执行。该链接会将用户重定向到其他地方,并且我在用户重定向之前执行 fetch。所以现在的脚本是这样的:

loggingAPI({
    timestamp: moment()
})
window.location = "http://.......com"
Run Code Online (Sandbox Code Playgroud)

日志记录 api 只是一个普通的获取包装器。

但是,服务器现在没有收到 API 请求。我认为这是因为它甚至没有机会将请求发送到 api。

那么我可以等待请求发送而不等待响应吗?

javascript fetch-api

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

GO中访问令牌过期后如何使用谷歌刷新令牌?

我是 Google 服务的新手,目前正在尝试从 gmail API 读取电子邮件。但是,当访问令牌过期时,我陷入了困境。

我从第一次身份验证中获得了刷新令牌,但是,有些线程说访问令牌在过期时会自动刷新。但我的没有。我不知道我错在哪里。这是我目前的代码。

// get saved token from database / anywhere else
func getCachedToken() *oauth2.Token {
    token := new(oauth2.Token)
    token.AccessToken = "xxxxxxxx"
    token.RefreshToken = "xxxxxx"
    token.TokenType = "Bearer"
    return token
}

func refreshToken(config *oauth2.Config, token *oauth2.Token) *http.Client {
    return config.Client(context.Background(), token)
}

// Retrieve a token, saves the token, then returns the generated client.
func getClient(config *oauth2.Config) *http.Client {
    tok := getTokenFromWeb(config)
    fmt.Println(tok.RefreshToken)
    fmt.Println(tok.AccessToken)
    fmt.Println(tok.Expiry)
    fmt.Println(tok.TokenType)
    return config.Client(context.Background(), tok)
}

func main() (string, error) {
    b, …
Run Code Online (Sandbox Code Playgroud)

go oauth-2.0 google-oauth

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