当通过 POST 上传文件时,表单数据通过 $_POST 和 $_FILES 变量(分别)从文件中分离出来。另一方面,当通过 PUT 上传文件时,必须从单一来源 ( php://input
) 检索响应。不幸的是,当涉及到一个文件时,php://input
似乎包含多个标题,这些标题似乎被某种键(--6OJvloM5owOQsn2b3APr-Ad9dDLvRqBxm
在这种情况下)划分。
--6OJvloM5owOQsn2b3APr-Ad9dDLvRqBxm
Content-Disposition: form-data; name="file"; filename="image.jpg"
Content-Type: application/octet-stream
Content-Transfer-Encoding: binary
<<<BINARY DATA>>>
--6OJvloM5owOQsn2b3APr-Ad9dDLvRqBxm
Content-Disposition: form-data; name="description"
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
<<<FILE DESCRIPTION>>>
--6OJvloM5owOQsn2b3APr-Ad9dDLvRqBxm--
没有遍历整个响应并尝试挑选不同的标题,有没有办法将文件与表单数据分开?
注意:我正在使用一个著名的 3rd-party 应用程序来发出 API 请求,因此问题不太可能存在于请求本身。