>  기사  >  백엔드 개발  >  PHP에서 Restful PUT 방식의 매개변수 제출 및 수신에 대한 자세한 설명

PHP에서 Restful PUT 방식의 매개변수 제출 및 수신에 대한 자세한 설명

小云云
小云云원래의
2018-03-26 13:08:546278검색

PHP의 Restful 인터페이스를 개발하는 우리 모두는 리소스를 업데이트하는 PUT 메서드가 있다는 것을 알고 있을 것입니다. 그렇다면 PUT HTTP 메서드를 사용하여 리소스를 업데이트하는 방법은 주로 Restful PUT의 매개변수 제출 및 수신에 대한 자세한 설명을 공유합니다. PHP의 메소드가 모든 사람에게 도움이 되기를 바랍니다.

PUT 요청 보내기

때때로 PUT 메소드에서 받은 매개변수가 우리가 원하는 유형이 아닌 것을 발견할 때가 있습니다. 매개변수 배열을 원하지만 실제로는 를 입력했기 때문입니다. Content-Type 유형이 잘못되었습니다. application/json 또는 application/x-www-form-urlencoded에 해당하는 데이터를 전송하고 있지만 Content-Type은 multipart/form-data이므로 수신된 데이터는 form-data가 됩니다. Content-Type的类型搞错了,我们发送的是application/json或者application/x-www-form-urlencoded对应的数据,但Content-Type却是multipart/form-data,这样接收的数据就变成了form-data的样子:

----------------------------217287928126218120101488Content-Disposition: form-data; name="status"

1
----------------------------217287928126218120101488--

并且Restful的数据基本都是json格式传输,所以发送的HTTP头应该是Content-Type=application/json
使用POST MAN:
PHP에서 Restful PUT 방식의 매개변수 제출 및 수신에 대한 자세한 설명
PHP에서 Restful PUT 방식의 매개변수 제출 및 수신에 대한 자세한 설명

接收PUT请求参数

PUT方法接受参数使用:

parse_str(file_get_contents('php://input'), $data);

参数保存在$data里。
如果使用tp5框架可以使用助手函数实现:

input('put.status');input('put.');

ps:这里的form-data误区应该是由PHP的POST和PUT方法内部解析multipart/form-datarrreee

그리고 Restful의 데이터는 기본적으로 json 형식으로 전송되므로 전송되는 HTTP 헤더는 다음과 같습니다. Content-Type=application/json이어야 합니다.
POST MAN 사용:
여기에 이미지 설명 작성
여기에 사진 설명을 쓰세요

PUT 요청 매개변수 수신

PUT 메소드는 매개변수를 승인하고 다음을 사용합니다. rrreee

매개변수는 $data에 저장됩니다.
tp5 프레임워크를 사용하는 경우 도우미 기능을 사용할 수 있습니다. 🎜rrreee🎜ps: 여기서 양식 데이터에 대한 오해는 multipart/form-data의 데이터가 내부적으로 구문 분석된다는 것입니다. PHP의 POST 및 PUT 메소드는 메소드가 다르기 때문에 POST 메소드는 매개변수를 $_POST로 구문 분석하고 내용을 공백으로 남겨 두는 반면, PUT은 이 단계를 수행하지 않으므로 사용법의 차이에 주의하십시오. 🎜🎜관련 권장 사항: 🎜🎜🎜Restful🎜🎜에서 반환한 콘텐츠 유형의 PHP 자동 식별

위 내용은 PHP에서 Restful PUT 방식의 매개변수 제출 및 수신에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.