小编Tre*_*son的帖子

golang中混合命名和未命名参数

我的代码遇到问题,它给了我一个错误:

未命名和混合参数

func(uc fyne.URIWriteCloser, error) {
   ...
}
Run Code Online (Sandbox Code Playgroud)

go

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

Go GRPC 双向流的刷新令牌

TLDR:我正在寻找一种方法来更新每次调用的开放流上的标头,而stream.Send(msg)无需关闭流并打开一个新流。

概括

我有一个 GRPC 客户端和服务器来处理双向流。要向服务器进行身份验证,客户端必须在请求标头中发送 JWT,并将其设置为“授权”。令牌的有效期为 30 分钟。令牌过期后,服务器将终止连接。

我正在寻找一种方法来刷新客户端的授权令牌,并保持流打开。客户端应在循环中运行,每 30 分钟使用更新的令牌和更新的负载执行一个新请求。我还没有找到从客户端更新已打开流的标头的方法。

让我们看一些代码来了解客户端的样子。下面的代码有一个函数用于创建客户端的新实例,另一个函数用于建立与 GRPC 服务器的连接。

func NewWatchClient(config *Config, logger *logrus.Logger) (*WatchClient, error) {
    cc, err := newConnection(config, logger)
    if err != nil {
        return nil, err
    }

    service := proto.NewWatchServiceClient(cc)

    return &WatchClient{
        config:  config,
        conn:    cc,
        logger:  entry,
        service: service,
    }, nil
}

func newConnection(config *Config, logger *logrus.Logger) (*grpc.ClientConn, error) {
    address := fmt.Sprintf("%s:%d", config.Host, config.Port)

    // rpcCredential implements credentials.PerRPCCredentials
    rpcCredential := newTokenAuth(config.Auth, config.TenantID)

    return grpc.Dial(
        address,
        grpc.WithPerRPCCredentials(rpcCredential), …
Run Code Online (Sandbox Code Playgroud)

go grpc grpc-go

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

如何在Create React App中删除死代码

我有一个create-react-app项目,我正在努力减少捆绑的JS文件大小.我的捆绑包大小的大约一半来自名为MDBReact(反应组件库)的依赖项,其中大部分未被使用.我试图找出如何/如果我可以从捆绑的构建中移除树抖动的死代码.我一直在研究这个问题,我发现的最接近的文章就是这个.这篇文章让我感到困惑,并没有给出如何或是否可以做到的任何解释.我还在webpack树上发现了这个指南,说明如何完成它,但这似乎并没有解决问题.

reactjs webpack babeljs create-react-app tree-shaking

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

标签 统计

go ×2

babeljs ×1

create-react-app ×1

grpc ×1

grpc-go ×1

reactjs ×1

tree-shaking ×1

webpack ×1