放大常见问题解答明确说可以。但是github链接现在仅将您重定向到主放大页面,并且说明仅涉及使用cli。
问:即使不使用CLI,也可以使用Amplify Framework库吗? 是。这些库可用于访问未使用Amplify CLI创建的后端资源。
答案 0 :(得分:1)
您可以,如果您知道自己在做什么。细节决定成败。文档说:
即使不使用CLI,也可以使用 Amplify Framework库吗?是的。
注意它是如何明确表示框架库的。这意味着您无法手动生成资源。 (从技术上讲,您可以自己编写模板,但是AFAIK仍然需要CLI的amplify push
命令才能影响云。)但是您可以使用框架组件。
这意味着,例如,您可以手动配置AWS Amplify以使用自定义GraphQL终端节点,然后使用框架公开的帮助程序,组件和方法(例如graphqlOperation
)发出请求。
答案 1 :(得分:1)
我正在使用带有手动设置的Auth,AppSync和Storage的React Amplify库,因此它是可行的。
要设置S3,请遵循指南here。 对于AppSync设置,我使用的是this plugin。
答案 2 :(得分:0)
我了解到,您无需Amplify CLI就可以使用Amplify库。
要执行此操作,您只需正常安装放大库即可。
在React Web中:
npm install --save aws-amplify
npm install --save aws-amplify-react
之后,您需要通过 Amplify.configure(); 手动配置要使用的所有功能。您可以在Amplify文档中找到打算使用的每个库的手动配置。
以下是使用Cognito的示例:
https://aws-amplify.github.io/docs/js/authentication#manual-setup
Amplify.configure({
"aws_project_region": process.env.REACT_APP_REGION,
"aws_cognito_identity_pool_id": process.env.REACT_APP_IDENTITY_POOL_ID,
"aws_cognito_region": process.env.REACT_APP_REGION,
"aws_user_pools_id": process.env.REACT_APP_USER_POOL_ID,
"aws_user_pools_web_client_id": process.env.REACT_APP_CLIENT_ID,
"oauth": {},
Auth: {
// REQUIRED - Amazon Cognito Identity Pool ID
identityPoolId: process.env.REACT_APP_IDENTITY_POOL_ID,
// REQUIRED - Amazon Cognito Region
region: process.env.REACT_APP_REGION,
// OPTIONAL - Amazon Cognito User Pool ID
userPoolId: process.env.REACT_APP_USER_POOL_ID,
// OPTIONAL - Amazon Cognito Web Client ID (26-char alphanumeric string)
userPoolWebClientId: process.env.REACT_APP_CLIENT_ID,
}
});
您无需使用放大按钮进行部署。您可以手动部署和配置正在使用的任何功能。
我发现这种方法使您可以完全控制Amplify库的使用,而不会增加CLI和部署过程的开销。
答案 3 :(得分:0)
嗯,这应该没问题。官方文档中提到您可以在没有 CLI 的情况下使用 Amplify 库:
<块引用>如果您不使用 Amplify CLI 或需要覆盖这些设置,本文档会显示每个类别的可用配置属性。
因此,您可以看到这是可以的。
在以下链接中,您可以找到不同服务的配置(通常会生成):