【发布时间】:2025-12-09 15:00:02
【问题描述】:
我正在尝试使用微服务 GRPC 在 NestJS 中对我的用户进行身份验证,但我无法发送 Set-Cookie 标头来发送 JWT 令牌。
@GrpcMethod('Auth', 'SignIn')
async signIn(data: my.api.auth.SignInRequest): Promise<any> {
try {
const response = await this.authService.signIn(data.email, data.password);
const metadata = new grpc.Metadata();
metadata.set(
'Set-Cookie',
`token=${response.jwt}; Expires=${response.expiresIn}; HttpOnly`,
);
return metadata;
} catch (error) {
throw new RpcException({
code: grpc.status.NOT_FOUND,
message: 'User not found',
});
}
}
我不想在我的响应中发送 JWT 并在前端设置 cookie,因为在没有 HttpOnly 的情况下不设置这种 cookie 是一种不好的做法。但我不知道如何将Set-Cookie 标头返回到我的前端。
谢谢!
【问题讨论】: