我目前正在用PHP开发Restful Json-API.我想发送一个PUT-Request items/:id来更新记录.数据将作为传输application/json.
我想用API调用API
curl -H "Content-Type: application/json" -X PUT -d '{"example" : "data"}' "http://localhost/items/someid"
Run Code Online (Sandbox Code Playgroud)
在服务器端,我无法检索请求正文.我试过了
file_get_contents("php://input");
Run Code Online (Sandbox Code Playgroud)
但这会返回一个空字符串.一个fopen()/ fread()组合也不起作用.
通过POST调用时,一切都很好,我可以在服务器端完美地读取json.但API不再是Restful了.有人有解决方案吗?还有另一种发送和接收Json的方式吗?
顺便说一句,我正在使用Slim Framework开发API .
dec*_*eze 13
php://input 对于PUT请求只能读取一次:
注意:使用php://输入打开的流只能读取一次; 流不支持搜索操作.但是,根据SAPI实现,可能会打开另一个php://输入流并重新开始读取.只有在保存了请求正文数据后才能执行此操作.通常,这是POST请求的情况,但不是其他请求方法,例如PUT或PROPFIND.
Slim框架已根据请求读取数据.从Request对象中获取已读取的数据.
| 归档时间: |
|
| 查看次数: |
15755 次 |
| 最近记录: |