问题描述
file_get_contents("php://input")
或 $HTTP_RAW_POST_DATA
- 哪一个更适合获取 JSON 请求的正文?
file_get_contents("php://input")
or $HTTP_RAW_POST_DATA
- which one is better to get the body of JSON request?
当使用客户端 XmlHTTPRequest
时,我应该使用哪种请求类型(GET
或 POST
)来发送 JSON 数据?
And which request type (GET
or POST
) should I use to send JSON data when using client side XmlHTTPRequest
?
我的问题是从这个答案中得到启发的:如何使用 curl 将 JSON 发布到 PHP
My question was inspired from this answer: How to post JSON to PHP with curl
引用该答案:
从协议的角度来看,file_get_contents("php://input")
实际上更正确,因为您实际上并没有真正处理 http 多部分表单数据.
From a protocol perspective
file_get_contents("php://input")
is actually more correct, since you're not really processing http multipart form data anyway.
推荐答案
其实php://input
可以让你读取原始请求体.
Actually php://input
allows you to read raw request body.
它是 $HTTP_RAW_POST_DATA 的内存密集型替代方案,不需要任何特殊的 php.ini 指令.来自 参考
php://input
不适用于 enctype=multipart/form-data"
.
这篇关于file_get_contents("php://input") 或 $HTTP_RAW_POST_DATA,哪一个更适合获取 JSON 请求的正文?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!