在 Next.js 14 项目中,获取 fetch 请求的响应参数

1、使用 await 获取 fetch 请求的响应。

2、解析响应以获取 JSON 数据。

下面是一个示例代码,展示了如何获取和处理响应参数:

javascript 复制代码
import { NextResponse } from 'next/server';

export default async function handler(req) {
  const dataToSend = {
    // 你的数据
  };

  try {
    const response = await fetch(`${req.nextUrl.origin}/api/import`, {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
      },
      body: JSON.stringify(dataToSend), // 将数据转换为 JSON 字符串
    });

    if (!response.ok) {
      // 处理错误响应
      console.error('HTTP error', response.status);
      return NextResponse.json({ error: 'Failed to fetch data' }, { status: response.status });
    }

    const responseData = await response.json(); // 解析 JSON 数据

    // 处理 responseData
    console.log('Response Data:', responseData);

    return NextResponse.json(responseData); // 返回解析后的数据
  } catch (error) {
    // 处理 fetch 过程中可能出现的错误
    console.error('Fetch error:', error);
    return NextResponse.json({ error: 'Fetch error' }, { status: 500 });
  }
}
相关推荐
mantou1321 小时前
我给 AI Agent 做了个「油猴」:让 Claude Code / Codex 直接用你已登录的浏览器
前端·javascript·后端
默_笙1 小时前
🍕 一个主编、三个工种、两本手册:搭一支 AI 调研队
前端·javascript
code2cat1 小时前
Java进阶篇之AtomicMarkableReference:引用还在,标记已经改变
java·开发语言·cas·并发编程·逻辑删除
CappuccinoRose2 小时前
FormData数据处理
开发语言·前端·javascript·表单数据
Zguigo2 小时前
【CUDA8】第一个CUDA C++ Kernel --vector add
java·开发语言·c++
-Marks-2 小时前
【C++编程】STL容器(二)--- vector底层模拟实现(常用接口实现 | 扩容机制 | 深浅拷贝 | 迭代器失效)
开发语言·c++·vector·内存管理·迭代器失效·vector底层模拟实现
飘尘2 小时前
SVG和Canvas,前端里的两支“画笔”,用的时候怎么选择?
前端·javascript·面试
Shadow(⊙o⊙)2 小时前
C++11并发支持库
开发语言·c++
一技安身2 小时前
【java】JDK8 + JDK17 绿色解压共存方案-全程不修改任何系统环境变量
java·开发语言
hudd6683 小时前
JavaEE 初阶 - 多线程(初阶)
java·开发语言·java-ee