티스토리 뷰

Study/PHP

PHP - get, post, json

그징그징 2018. 8. 2. 15:00

PHP - get, post, json






1. 클라이언트로 postman을 이용

2. Apache에 php연동되어있는 상태




1. GET 방식




<?php 

echo $_GET["num1"];

?>


$_GET["*"]를 이용해서 GET방식으로 넘어온 값을 받아서 처리할수있습니다. 



PostMan이라는 프로그램을 이용해서 테스트 했습니다.


전송 방식을 GET으로 설정 후

Send 클릭하면

하단에 num1의 값인 1 을 확인할수있습니다.





2. POST 방식




<?php

echo $_POST["num1"];

?>


$_POST["*"]를 이용해서 POST방식으로 넘어온 값을 받아서 처리할수있습니다. 





전송 방식을 POST으로 설정 후

Send 클릭하면

하단에 num1의 값인 1 을 확인할수있습니다.


Json형식으로 넘어오는 것도 받아질까요?





JSON(application/json) 으로 해주고 Send를 눌렀습니다.

$_POST["*"]; 방식으로는 받지 못하는걸 확인했습니다.






3. JSON



결과부터 확인하겠습니다!

똑같이 JSON(application/json) 으로 해주고 Send를 눌렀습니다.





{"num1":1}과 1이 보이시나요?

값을 가져오는것에 성공했습니다.



코드를 확인해보겠습니다.





<?php

echo file_get_contents("php://input")."<br/>";

echo json_decode(file_get_contents("php://input"))->{"num1"};

?>



file_get_contents 라는 함수를 이용해서 {"num1":1} 이라는 값을 가져옵니다.



file을 String으로 읽어온다고 정의되어있습니다.

(정확한건 아닙니다만 저는 raw-json 형태로 값이 보내질때 쪼개져있으므로 (아마 byte?)

String 으로 먼저 바꾼다고 생각합니다. 정확한 정보를 찾을수가 없네요.. 아시는 분은 알려주세요 ㅠㅠ)




그 후에 

json_decode를 사용하여 String 으로 변경된 값을 json 형식으로 바꿔버립니다.

json_decode(file_get_contents("php://input"))


그 후에

->{"num1"}을 하면

num1의 값인 1을 가져올수있게되는거죠!





'Study > PHP' 카테고리의 다른 글

PHP-Oracle 연동  (0) 2018.08.01
Visual Studio Code - PHP  (0) 2018.08.01
PHP 문법  (0) 2018.07.31
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함