Next.js 13路由处理程序挂起GET请求

w1jd8yoj  于 2023-08-04  发布在  其他
关注(0)|答案(1)|浏览(121)

我目前正在做一个Next.js 13项目,我在新的路由功能上遇到了一些麻烦。我在app/api/ingresos/route.ts中设置了一个路由处理程序,代码如下:

import { NextResponse } from 'next/server';
import PocketBase from 'pocketbase';

export async function GET() {
  const pb = new PocketBase('http://127.0.0.1:8090');
  const records = await pb.collection('ingresos').getFullList({
    sort: '-created',
  });
  return NextResponse.json(records);
}

字符集
当我尝试使用Thunder Client向http://localhost:3000/api/ingresos发出GET请求时,请求只是无限期加载,并且不返回响应。另外,我在控制台中看到一个404错误:

GET http://localhost:3000/api/ingresos 404 (Not Found)
eval @ on-demand-entries-client.js:49
eval @ websocket.js:58
handleMessage @ websocket.js:57


我已经检查了我的PocketBase服务器正在运行,并且'ingresos'集合存在。以下是我的项目的结构:

PS C:\Users\zantl\OneDrive\Escritorio\REACT\gestions-gastospro> Get-Tree
app/
  api/
    Ingresos/
      route.ts
  components/
    navbar.tsx
    tablaIngresosCliente.tsx
  Ingresos/
    page.tsx
  favicon.ico
  globals.css
  layout.tsx
  page.tsx
pocketbase_0.16.10_windows_amd64/
  pb_data/
    data.db
    logs.db
  pb_migrations/
    1690143617_created_ingresos.js
    1690143631_updated_ingresos.js
  CHANGELOG.md
  LICENSE.md
  pocketbase.exe
public/
  next.svg
  vercel.svg
.eslintrc.json
.gitignore
next-env.d.ts
next.config.js
package-lock.json
package.json
postcss.config.js
README.md
tailwind.config.js
tsconfig.json


我不确定是什么导致了这个问题。这可能是我的async/await用法的问题,或者可能与我如何设置路由处理程序有关?如有任何帮助,将不胜感激!

kcugc4gi

kcugc4gi1#

你能在try/catch块中运行代码并捕获错误吗

export async function GET() {
  const pb = new PocketBase('http://127.0.0.1:8090');
  try {
    const records = await pb.collection('ingresos').getFullList({
      sort: '-created',
    });
    return new Response(JSON.stringify(records));
    
  } catch (error) {
    console.error(error)
    return new Response('Could not fetch', { status: 500 })

  }      
}

字符集

相关问题