我正在使用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方法是什么,我都应该能够解析请求。
1条答案
按热度按时间yi0zb3m41#
GET请求并不意味着发送一个消息体。理论上,我相信HTTP规范并不禁止它,但我不相信大多数客户端和服务器库都支持它。
GET的目的是检索数据,而不是发送数据。如果需要参数,请使用
http://example.com/api?param1=value1¶m2=value2
发送参数