小编Tre*_*tni的帖子

AWS Cognito 登录 (Android)

我想弄清楚如何使用 AWS Cognito 登录用户。这些教程似乎都是从注册用户的角度来处理用户的,而不是让他们登录。我不希望用户经历注册过程;这将由我们的办公室用户在别处完成。我只想在这个应用程序中有一个流程,让他们输入他们现有的用户名和密码并登录。

我目前对事物的理解是 Cognito 用户池仅支持使用 Facebook 或 Google 等身份验证提供程序登录,或非身份验证登录,我无法确定这是否使用用户名和密码(我在任何情况下都找不到该流程中的任何地方来提供用户名和密码)。还有 Cognito Federated Identities,它似乎也有一半时间被称为 Cognito User Pools,其中包含上述注册教程,但与仅登录现有用户无关。

我是否必须使用用户池的联合身份版本才能使用用户名和密码登录?如果没有,我该如何处理非联合用户池?如果是这样,我如何制作仅用于登录而不是注册的流程?我正试图从上述教程中获取看起来相关的部分,但我感到沮丧,因为我已经在这个问题上追赶了几个星期,只有更多层的东西依赖于依赖于其他东西的其他东西洞察力。

android amazon-web-services amazon-cognito aws-cognito

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

承诺:然后在解决之前

我在 Node.js 中做过的第一件事,我正在编写一个 AWS Lambda 函数,我想在做任何其他事情之前检查用户的自定义属性是否有值。因为我被告知 Promises 是同步处理异步方法的方式,所以我写了这个函数:

var AWS = require('aws-sdk');
var s3 = new AWS.S3();
var cogId = new AWS.CognitoIdentityServiceProvider();

exports.handler = function (event, context) {

    if (event != null)
    {
        var identityId = context.identity.cognitoIdentityId;

        if (event.userId != null)
        {
            var userId = event.userId;
            PromiseConfirmIdNotSet(userId)
                .then(SetId(userId, identityId))
                .catch();
        }
    }

    context.done(null, 'Hello World');  // SUCCESS with message
};

function PromiseConfirmIdNotSet(userId)
{
    console.log('Entering function');
    return new Promise(function (resolve, reject) {
        console.log('Entering Promise');
        cogId.adminGetUser({
                UserPoolId: myUserPool,
                UserId: userId
            },
            function …
Run Code Online (Sandbox Code Playgroud)

javascript node.js promise aws-lambda

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

rxjs:等待带有管道的 httpGet 调用

这个问题已经出现过好几次了,每次出现时,我都会忙着弄清楚如何以正确的方式去做,因为我似乎永远无法找到上次需要时是如何做的。

这次出现是因为我意识到httpGet在处理先前的httpGet调用时需要进行额外的调用:

http.getWrapper<T>(whatever)
  .pipe<T, T>(map<T, T>(res => getWrapper2<T, T>(res)) // New function, returns the same type it was given
  .pipe<T, U>(oldStuff)
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是,以前,没有额外的get调用,我的oldStuff处理程序收到了一个T它可以毫无问题地处理的问题。但是新的get调用返回一个Observable<T>,我总是发现弄清楚如何告诉管道链等待 完成get并使用最终值很令人困惑。我能想到做的任何事情,主要似乎是toPromise()和的变体async/await,只是在我和我的数据之间移动额外的层,而我似乎不太能理解它。由于某种原因,插入第二个get似乎总是比第一个更令人困惑get,我不知道我是否需要改变结构,或者只是我的想法不对。

为了让事情变得更加混乱,只有有时才需要额外的处理层:

.pipe(map(res => condition(res) ? getWrapper2(res) : res))
Run Code Online (Sandbox Code Playgroud)

我可以做什么来等待并扁平化它,以便我可以将新get结果传递给链的其余部分pipe

http-get observable async-await rxjs typescript

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