Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在GraphQL/AWS Amplify中启用前端的CORS模式?_Javascript_Graphql_Aws Amplify - Fatal编程技术网

Javascript 如何在GraphQL/AWS Amplify中启用前端的CORS模式?

Javascript 如何在GraphQL/AWS Amplify中启用前端的CORS模式?,javascript,graphql,aws-amplify,Javascript,Graphql,Aws Amplify,如何对AWS Amplify的GraphQL执行相同的操作 fetch('https://trusted-api.co.jp', { 模式:“cors” }); 我既没有找到如何做的文档,也没有找到提到cors的源代码 参考文献 可以按如下方式调用常规graphQL操作: import AWSAmplifyAPI, { graphqlOperation as graphQL_Operation, GraphQLResult } from "@aws-amplify/api"

如何对AWS Amplify的GraphQL执行相同的操作

fetch('https://trusted-api.co.jp', {
模式:“cors”
});
我既没有找到如何做的文档,也没有找到提到cors的源代码

参考文献 可以按如下方式调用常规graphQL操作:

import AWSAmplifyAPI, { graphqlOperation as graphQL_Operation, GraphQLResult } from "@aws-amplify/api";
import Observable from "zen-observable";

export default class DataBaseService {

  public static async sendRequestAndExtractDataFromResponse(
      graphQL_RawRequest: string,
      requestVariables?: object
  ): Promise<unknown> {

    const serverRawResponse: GraphQLResult | Observable<unknown> =
        await AWSAmplifyAPI.graphql(graphQL_Operation(graphQL_RawRequest, requestVariables));
   // ...
  }
}
import AWSAmplifyAPI,{graphqlOperation as graphQL_Operation,GraphQLResult}来自“@aws-amplify/api”;
从“zen Observable”导入Observable;
导出默认类数据库服务{
公共静态异步sendRequestAndExtractDataFromResponse(
graphQL_RawRequest:字符串,
请求变量?:对象
):承诺{
const serverRawResponse:GraphQLResult |可观察=
等待AWSAmplifyAPI.graphql(graphql_操作(graphql_RawRequest,requestVariables));
// ...
}
}

您需要在服务器端对此进行配置,因此服务器端需要批准此“CORS”问题

从技术上讲,放大lambda函数将添加类似于以下内容的代码:

exports.handler = async (event) => {
  const response = {
    statusCode: 200,
    //  Uncomment below to enable CORS requests
    headers: {
      "Access-Control-Allow-Origin": "*",
    },

    //   headers: {
    //     "Access-Control-Allow-Headers" : "Content-Type",
    //     "Access-Control-Allow-Origin": "https://www.example.com",
    //     "Access-Control-Allow-Methods": "OPTIONS,POST,GET"
    // },
    body: JSON.stringify("Hello from Lambda!"),
  };
  return response;
};


谢谢你的回答!