Next.js应用API路由器可以解析post请求下的传入请求体,但不能解析get请求下的传入请求体

c9qzyr3d  于 2023-11-18  发布在  其他
关注(0)|答案(1)|浏览(150)

我正在使用next.js应用路由器开发一个API。当HTTP请求类型为post时,我能够使用const res = await request.json()解析数据。但当HTTP请求为get时,我无法这样做。
语法错误:JSON中的JSON输入意外结束。parse()at parseJSONFromError(node:internal/deps/undici/undici:6571:19)at successSteps(node:internal/deps/undici/undici:6545:27)at specConsumeBody(node:internal/deps/undici/undici:6551:9)at NextRequest.json(node:internal/deps/undici/undici:6442:18)at GET(webpack-internal:/(rsc)/./src/app/API/submit-lead-by-get-method/route.ts:12:31)有没有人知道是什么原因导致了这个问题,以及如何解决它?
根据我的理解,当向端点发送相同的数据体时,无论端点的HTTP方法是什么,我都应该能够解析请求。

yi0zb3m4

yi0zb3m41#

GET请求并不意味着发送一个消息体。理论上,我相信HTTP规范并不禁止它,但我不相信大多数客户端和服务器库都支持它。
GET的目的是检索数据,而不是发送数据。如果需要参数,请使用http://example.com/api?param1=value1&param2=value2发送参数

相关问题