将非平凡的单表 dynamodb 连接到反应前端的选项有哪些?我正在使用 cognito 用户池/身份验证,并让他们很好地使用带有自定义组件的放大身份验证,但我对单表 ddb 的访问模式似乎不适用于放大 api graphql 方法。
那么,有没有一种方法可以调用一个端点(例如 http api 网关)并处理好不使用放大的 cognito 身份验证?
非常感谢任何帮助/建议。
将非平凡的单表 dynamodb 连接到反应前端的选项有哪些?我正在使用 cognito 用户池/身份验证,并让他们很好地使用带有自定义组件的放大身份验证,但我对单表 ddb 的访问模式似乎不适用于放大 api graphql 方法。
那么,有没有一种方法可以调用一个端点(例如 http api 网关)并处理好不使用放大的 cognito 身份验证?
非常感谢任何帮助/建议。
我已经构建了一个 React 应用程序并通过 REST API 将它连接到我的后端(Cognito、API Gateway、Lambda、DynamoDB 等)。我的 DDB 是一个表。我在前端使用了 AWS Amplify,它运行良好。
这是使用 AWS Amplify 调用我的后端的代码片段
import {API, Auth} from "aws-amplify";
export default function MyComponent() {
// variables, hooks, etc. go here
async function handleSubmit(widget) {
let widget = await createWidget(widget);
// do stuff with widget
}
async function createWidget(widget) {
try {
const args = {
headers: {
Authorization: `Bearer ${(await Auth.currentSession())
.getIdToken()
.getJwtToken()}`
},
body: {
// data to send to my API goes here
}
};
return API.post("my_api", "/widgets", args);
} catch (e) {
// do error handling
}
}
return (
// form with onSubmit=handleSubmit(widget)
);
}
在这个片段中,我使用 Aplify 的 Auth 和 API 类来调用我的后端。我的应用程序使用 JWT 令牌对我的 API 进行经过身份验证的调用,因此我使用 Amplify 的Auth
类来获取我需要与我的请求一起发送的令牌(在标题中)。我没有使用graphql,但我怀疑这个过程是相似的。
如果您不想使用 Amplify,我不明白为什么您不能直接使用您选择的客户端查询 API。
您说您的访问模式似乎不适用于 Amplify。你能详细说明为什么会这样吗?