问题标签 [aws-amplify]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
reactjs - AWS Amplify - 更新 DynamoDB 中的列
我试图弄清楚如何使用“aws-amplify”API 更新 Dynamo 表中的列。
如果没有Amplify(仅使用 AWS 开发工具包),可以这样完成:
我使用此处的文档设置了后端/api(启用云 API 来执行 CRUD 操作) https://docs.aws.amazon.com/aws-mobile/latest/developerguide/web-access-databases.html
就创建新记录的“放置/获取”方法等而言,一切正常
但是关于像上面的更新这样的更高级技术的文档很少,我不知道如何/如何使用 Amplify 来实现。
希望有人已经这样做了!谢谢
javascript - 通过 aws Amplify 使用 Storage 类对本机图像上传进行反应
我有一个图像。我想使用 aws-amplify 将它上传到 S3。所有Storage类上传示例均使用文本文档;但是,我想上传一张图片。我正在使用不支持 react-native-fetch-blob 的 expo,并且 react native 没有 blob 支持......但是。
所以我的选择似乎是:
- 通过 lambda 创建节点服务。
- 仅将 base64 信息上传到 S3 而不是 blob。
const { status } = await Permissions.askAsync(Permissions.CAMERA_ROLL);
if (status === 'granted') {
const image = await ImagePicker.launchImageLibraryAsync({
quality: 0.5,
base64: true
});
const { base64 } = image;
Storage.put(`${username}-profileImage.jpeg`, base64);
}
它是否正确?
javascript - 在 currentSession() 上使用 .then 时,aws-amplify 仍然返回一个承诺
在 React / Redux 中,我尝试使用 redux connect 将 aws-amplify 会话数据映射到道具。
我的问题是,即使我使用 .then 我总是得到一个返回的承诺,结果看起来像这样:
代码如下。
我尝试使用 JSON.stringify、Promise.resolve() 等进行解析……但我总是得到承诺。
如果我在 redux 连接器中运行它,或者直接在页面上运行它似乎也没有关系,也尝试过 double 。然后认为它可能是一个包装在一个承诺中的承诺,但事实并非如此。
angular - 缺少标题 aws-amplify + angular 5.x
我正在使用angular 5.x和aws-amplify构建一个项目。我成功地通过aws-cognito注册、确认和登录我的用户,现在,我想检索用户jwt
并将其添加到请求标头以对我的dynamoDb集合执行 CRUD 操作。
不幸的是,当我尝试在发电机上执行此类操作时,我收到以下错误:
我使用以下Cognito.service获取用户的令牌:
该 get 由以下方式调用:
Dynamo.service如下:
我的环境如下:
当然,在我的应用程序启动时,我正在配置放大,例如:
在我的api-gatway 上,我启用了标准CORS
、Authorization
必需和无Token
验证。我觉得我做的一切都很好,我不明白我做错了什么。
编辑:
Authorization
header 在使用API.get(...)
和传递一个 header 对象时得到正确设置,例如:
更多内容可以在以下链接aws.github.io/aws-amplify 阅读
有什么建议吗?
amazon-web-services - 无法在 AWS Mobile Hub 上切换用户池
我是 AWS 菜鸟,在开始使用我的应用程序进行用户身份验证时遇到了一些问题。我正在开发一个简单的网络应用程序,并开始使用 awsmobile cli 和 aws-amplify 工具。
我在移动集线器上创建了一个新项目,并且能够成功注册、验证和登录用户,但是移动集线器创建的默认用户池强制使用用户名。我的应用程序中的用户名没有真正的用处,最终我只想使用电子邮件地址、名字和姓氏作为创建帐户的必填字段。
我从 AWS 开发人员体验成员那里找到了答案,我按照推荐的步骤进行操作,但我现在在登录时遇到问题,因为在计算客户端密码的哈希时出现错误,请求被拒绝。
"Unable to verify secret hash for client ***********************6pl"
删除旧用户池后,我现在收到一个No userPool
错误,这是有道理的,因为看起来新用户池尚未与身份池关联。
在移动集线器的用户资源视图中,我仍然可以看到旧用户池(即使我删除了它)。我已经更新了身份验证提供程序以匹配新用户池中的客户端 ID 和详细信息。
在我的客户端上,我手动修改了backend-details.json
文件以匹配新用户池以及aws-exports.js
文件。使用通过控制台推送更改awsmobile push
似乎不起作用,因为它会从旧用户池中提取详细信息。
关于我做错了什么的任何想法?
amazon-web-services - AWS Amplify: How to setup { withConnector } component?
Following the Amplify Quick Start I set up an AWS Mobile App with the awsmobile-cli
:
In my react App I configured Amplify like so (I also tried manual configuration):
This Code shows me the Cognito UI, but on any action, I take the following error appears:
No userPool
How do I properly connect the Amplify withConnector
component with my App's userPool?
P.S. Yesterday evening my app was working flawlessly. Today I only performed some minor changes and cannot explain this behavior.
react-native - “无法读取 null 的属性 'accessKeyId'”错误。尝试使用“aws-Amplify”进行 API 调用时
在安装应用程序后第一次尝试使 API 请求获得“accessKeyId”为 null”错误时,一旦应用程序终止并重新启动,所有 API 请求都可以正常工作。
aws-amplify 配置如下。
AWS 身份验证配置如下
使用 "react-native-aws-cognito-js : 0.0.7" 进行身份验证,使用 "aws-amplify:^0.2.3" 进行 API 调用
amazon-web-services - 如何将图像从本地路径上传到 S3
我正在开发一个 React Native 应用程序并尝试将存储在设备上的图像上传到 S3。我知道图像的路径,但是当我尝试上传图像时,S3 返回不支持的文件错误或上传文件及其名称,但文件仅包含文件路径字符串。
我正在使用aws-amplify来建立这些连接。
这是我使用的代码块:
非常感谢
amazon-web-services - 如何将我的移动集线器与我现有的 cognito 用户池链接?(第2部分)
我很抱歉这样做,但我没有足够的声誉来评论这个问题:如何将我的移动集线器与我现有的 cognito 用户池链接?,并且提供的答案并没有完全解决我的问题。
为了更好地解释,我使用了适用于 AWS Mobile Hub 的 React Native 构建。我已“成功”通过身份验证,但Amplify
继续使用预配置(自动集成)的用户池。这要求用户在注册过程中输入电话号码,但我们没有用于注册的字段。
我已将我的 Cognito 用户池链接到“身份验证提供程序”下的预配置(自动集成)身份池,如上述问题中所建议的 @andrew-c。如上述问题中所建议的,我编辑了“aws_user_pools_id”属性以指向我的自定义用户池。
当我console.log()
将用户池属性传递给我的Amplify
配置时,它给了我我的自定义用户池。
当我console.log()
从身份验证成功响应时,我还会看到我的自定义用户池。phone_number
但是用户不断被保存到预先配置的(自动集成的)用户池的模型(即,必需的)中并对其进行身份验证。即,这就是我的用户在注册后出现的地方。
有谁知道我错过了什么?
这是我在 中看到的console
:
这就是我在运行这段代码时得到的:
以及相关的进口:
所以我只想说我真的不想在注册时要求电话号码,我认为这将是最简单的方法,但如果有人知道我错过了什么或有更好的途径让我下去,请让我知道。谢谢各位!
amazon-web-services - aws amplify 是否与 NextJS 一起使用?
我只是想用 NextJS 和 aws-amplify 运行一个基本的 hello world,但似乎在我 npm install 这两个库的那一刻
aws-amplify & aws-amplify-react
我得到“缺少反应模块”并且没有定义窗口。