PHP JAVA post 요청 데이터 수신 처리
1、$_POST [index] 방식
2、$data = file_get_contents("php://input");
Content - type 은 application/x - www - data - urlencoded 와 multipart/form - data 두 가지 경우 에 만 PHP 가 http 요청 패 킷 에 해당 하 는 데 이 터 를 전역 변수 에 채 울 수 있 습 니 다 $POST.따라서 $ 를 사용 하면POST 가 post 에서 온 데 이 터 를 가 져 올 때 는 Content - Type 형식 에 주의해 야 합 니 다. application/x - www - data - urlencoded 와 multipart/form - data 가 아니라면 file 을 사용 합 니 다.get_contents("php://input");획득 을 진행 하 다.
php://input http entity body 에서 지정 한 길이 의 값 을 읽 을 수 있 습 니 다. Content - Length 에서 지정 한 길 이 는 POST 방식 이나 GET 방법 으로 제출 한 데이터 입 니 다.그러나 일반적인 GET 방법 으로 데 이 터 를 제출 할 때 http request entity body 부분 이 비어 있 습 니 다.
예 를 들 어 제 이 슨 꼬치 를 전달 할 때 fileget_contents("php://input");원본 문자열 을 가 져 오고 json 을 통 해decode () 를 해석 합 니 다.
자바 의 servlet 에서 Post 요청 데 이 터 를 받 는 데 는 주로 두 가지 방식 을 사용 합 니 다.
1、request.getParameter()
2、request.getInputStream();
Content - type 은 application/x - www - data - urlencoded 와 multipart/form - data 두 가지 경우 에 만 request. getParameter () 가 값 을 가 져 올 수 있 습 니 다. 그렇지 않 으 면 비어 있 습 니 다.
Content - Type 이 다른 유형 일 때 다음 과 같은 방식 으로 가 져 올 수 있 습 니 다.
String json = org.apache.commons.io.IOUtils.toString(request.getInputStream());
System.out.println(json);
이후 가 져 온 값 (문자열) 을 처리 합 니 다.
따라서 HttpClient 4.5.2 의 flent api 를 통 해 post 요청 을 보 낼 때 수신 자가 대응 하 는 처리 방식 은 다음 과 같 습 니 다.
---------------------方式一:
发送方:
Request.Post(url).bodyForm(Form.form().add("loginName", "vip").add("password", "secret").build()).execute().handleResponse(myRespHandler);
接受方:
java:request.getParameter() 或 request.getInputStream()
php:$_POST 或 file_get_contents('php://input');
---------------------方式二:
发送方:
Request.Post(url).bodyString(req, ContentType.APPLICATION_JSON).execute().handleResponse(myRespHandler);
接收方:
java:request.getInputStream()
String json = org.apache.commons.io.IOUtils.toString(request.getInputStream());
php: file_get_contents("php://input");
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
laravel에 yo에서 angularJs&coffeescript를 사용할 수 있도록 한다.먼저 yo 명령을 사용할 수 있어야하므로 아래에서 설치 global에 설치한 곳에서 laravel의 프로젝트 루트로 이동. 클라이언트 코드를 관리하는 디렉토리를 만들고 이동합니다. 클라이언트 환경 만들기 이것으로 히...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.