小编mjp*_*lak的帖子

从Google身份验证服务检索.NET中REST服务的新Firebase访问令牌

更改了firebase授权系统后,我正在尝试从google auth服务器中检索c#中的访问令牌.

根据新文档:https://firebase.google.com/docs/reference/rest/database/user-auth#section-api-usage

我在c#中创建了类似的东西:

using Google.Apis.Auth.OAuth2;
[...]
async Task<string> GetToken()
{
    GoogleCredential credential;
    using (var stream = new System.IO.FileStream("gckey.json",
        System.IO.FileMode.Open, System.IO.FileAccess.Read))
    {
        credential = GoogleCredential.FromStream(stream).CreateScoped(
            new string[] { "https://www.googleapis.com/auth/firebase.database" }
            );
    }

    ITokenAccess c = credential as ITokenAccess;
    return await c.GetAccessTokenForRequestAsync();
}
Run Code Online (Sandbox Code Playgroud)

gckey.json是从Google Developer Console下载的特定firebase项目的密钥文件.

代码工作正常,但它返回不与firebase一起使用的令牌,我试过: https://fiery-torch-xxxx.firebaseio.com/.json?access_token=retrived token

但我收到: "error" : "Permission denied."

我究竟做错了什么?或者我错过了什么?

c# rest google-api firebase google-api-dotnet-client

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

SubscribeToShard 命令的异常

我正在尝试从 Kinesis Shard 订阅事件。但是执行SubscribeToShardCommand挂起 5 分钟(订阅超时)然后抛出错误:

(node:2667) UnhandledPromiseRejectionWarning: SyntaxError: Unexpected token  in JSON at position 0
    at JSON.parse (<anonymous>)
    at /home/mjpolak/Documents/company/project/node_modules/@aws-sdk/client-kinesis/protocols/Aws_json1_1.ts:4020:19
    at processTicksAndRejections (internal/process/task_queues.js:88:5)
    at Object.deserializeAws_json1_1SubscribeToShardCommand (/home/mjpolak/Documents/company/project/node_modules/@aws-sdk/client-kinesis/protocols/Aws_json1_1.ts:2583:21)
    at /home/mjpolak/Documents/company/project/node_modules/@aws-sdk/middleware-serde/src/deserializerMiddleware.ts:20:18
    at /home/mjpolak/Documents/company/project/node_modules/@aws-sdk/middleware-signing/src/middleware.ts:26:22
    at StandardRetryStrategy.retry (/home/mjpolak/Documents/company/project/node_modules/@aws-sdk/middleware-retry/src/defaultStrategy.ts:125:38)
    at /home/mjpolak/Documents/company/project/node_modules/@aws-sdk/middleware-logger/src/loggerMiddleware.ts:21:20
    at /home/mjpolak/Documents/company/project/kinesis-subscribe.ts:85:29
Run Code Online (Sandbox Code Playgroud)

我正在寻找可以让我成功订阅的帮助。

完整代码:

const { StreamDescription } = await client.send(
        new DescribeStreamCommand({
            StreamName: 'streamName',
        }),
    );
    const { StreamARN } = StreamDescription;

    const { Consumers } = await client.send(
        new ListStreamConsumersCommand({
            StreamARN,
        }),
    );

    let Consumer = Consumers.find((x) => x.ConsumerName == …
Run Code Online (Sandbox Code Playgroud)

javascript amazon-kinesis aws-sdk-js aws-sdk-js-v3

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