hono icon indicating copy to clipboard operation
hono copied to clipboard

hono/aws-lambda + @hono/graphql-server GET not working!

Open mthmcalixto opened this issue 9 months ago • 15 comments

What version of Hono are you using?

4.3.7

What runtime/platform is your app running on?

Lambda

What steps can reproduce the bug?

Any idea why the GET method doesn't work?

import rootResolver from "./resolvers/resolvers"
import { GraphQLFileLoader } from "@graphql-tools/graphql-file-loader"
import { loadSchemaSync } from "@graphql-tools/load"
import { addResolversToSchema } from "@graphql-tools/schema"
import { graphqlServer } from "@hono/graphql-server"
import { serve } from "@hono/node-server"
import { Hono } from "hono"
import { handle } from "hono/aws-lambda"
import { compress } from "hono/compress"
import { cors } from "hono/cors"
import { logger } from "hono/logger"
import { prettyJSON } from "hono/pretty-json"
import path from "path"

const app = new Hono()

app.use(logger())
app.use(cors())
app.use(compress())
app.use(prettyJSON())

const schemaPath = path.join(__dirname, "schemas/schema.graphql")

const schema = loadSchemaSync(schemaPath, {
  loaders: [new GraphQLFileLoader()],
})

const schemaWithResolvers = addResolversToSchema({
  schema,
  resolvers: rootResolver,
})

app.use(
  "/graphql",
  graphqlServer({
    schema: schemaWithResolvers,
  }),
)

if (process.env.AWS_LAMBDA_FUNCTION_NAME) {
  console.log("Running in AWS Lambda environment.")
  exports.handler = handle(app)
} else {
  console.log("Server is running on http://localhost:3000")
  serve(app)
}

What is the expected behavior?

image

What do you see instead?

image

image

Additional information

No response

mthmcalixto avatar May 19 '24 18:05 mthmcalixto