AWS Amplify:如何使用 API_KEY 进行测试和开发
AWS Amplify: how to use API_KEY for test and development purpose
我正在为我的项目使用 amplify。
我启用了 cognito 和 API_KEY 授权,并添加了以下功能来代替 amplify-cli'graphqlOperation'
function graphqlOperationWithAPIKey(query, variables) {
return {query: query, variables: variables, authMode: 'API_KEY'}
}
我正在打电话:
const response = await API.graphql(graphqlOperationWithAPIKey(mutations.createContract, {input: mockContract}))
但是我收到以下错误:
Failed: Object {
"data": Object {
"createContract": null,
},
"errors": Array [
Object {
"data": [Object],
"errorInfo": [Object],
"errorType": "Unauthorized",
"locations": [Array],
"message": "Not Authorized to access createContract on type Mutation",
"path": [Array],
},
],
}
这是我的架构:
type Contract @model {
id: ID!
rental: Car @connection
from: AWSDate!
to: AWSDate!
tenants: [String!]!
status: ContractStatus!
}
有人可以帮我完成这项工作吗?
不知道是不是bug,
如果我将它添加到模式,下面的工作,但 @aws_key 不工作(即使根据 doc 也应该工作)
@auth (
rules: [
{ allow: public, provider: apiKey }
]
)
我正在为我的项目使用 amplify。 我启用了 cognito 和 API_KEY 授权,并添加了以下功能来代替 amplify-cli'graphqlOperation'
function graphqlOperationWithAPIKey(query, variables) {
return {query: query, variables: variables, authMode: 'API_KEY'}
}
我正在打电话:
const response = await API.graphql(graphqlOperationWithAPIKey(mutations.createContract, {input: mockContract}))
但是我收到以下错误:
Failed: Object {
"data": Object {
"createContract": null,
},
"errors": Array [
Object {
"data": [Object],
"errorInfo": [Object],
"errorType": "Unauthorized",
"locations": [Array],
"message": "Not Authorized to access createContract on type Mutation",
"path": [Array],
},
],
}
这是我的架构:
type Contract @model {
id: ID!
rental: Car @connection
from: AWSDate!
to: AWSDate!
tenants: [String!]!
status: ContractStatus!
}
有人可以帮我完成这项工作吗?
不知道是不是bug, 如果我将它添加到模式,下面的工作,但 @aws_key 不工作(即使根据 doc 也应该工作)
@auth (
rules: [
{ allow: public, provider: apiKey }
]
)