공지 : 시승기 전문 사이트 http://testdrive.reviews를 개설하였습니다.
많이들 놀러와 주세요 ^^
2016.05.23 17:00

PHP curl로 파일 전송할 때 mime type 같이 전송하기

필요에 의해 html -> php -> java api로 파일을 전송해야 할 일이 생겼다.

Java Api는 UI에서 바로 사용하면 안되는 상태라서 php를 거쳐 가야 하는데 html에서 올린 파일을 Java API로 전달 하는 과정이 생각보다 쉽지 않아 정리 차원에서 글을 남긴다.


Html에서 php로 파일을 올리게 되면 $_FILES 라는 전역변수 안에 정보가 담기고, 실제 파일은 php.ini에서 지정한 임시 디렉토리에 저장된다.

해당 경로는 $_FILES['업로드한 html form name']['tmp_name'] 에 저장되어 있으며, 해당 파일을 다시 Java API 쪽으로 넘겨 주면 된다.


넘겨주는 방법은 curl을 사용하면 된다.

다음과 같은 방법으로 하면 된다.






Content-Type을 multipart/form-data로 셋팅하는 부분은 많지만, 많이 찾기 힘들었던 부분은 ".';filename='.$file['name'].';type='.$file['type']" 이다.

html에서 php로 업로드 한 파일은 image/png 인데 php에서 Java로 curl을 통해 업로드 하게 되면, 기본적으로 application/octet-stream 타입으로 업로드 되기 때문이다.

이 부분을 html에서 업로드 한 그대로 by pass 하기 위해서는 위 소스와 같이 값을 지정해 주면 된다.


그 후 $response에서 받은 Json 값을 파싱하면 되는데

$response에는 header 정보도 같이 들어오게 되므로 body만 별도로 분리해야 한다.



이렇게 하게 되면 header를 제외한 순서 Json body 부분만 받을 수 있게 된다.

저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
공지 : 시승기 전문 사이트 http://testdrive.reviews를 개설하였습니다.
많이들 놀러와 주세요 ^^
Trackback 20 Comment 0

Trackback : http://www.4te.co.kr/trackback/867 관련글 쓰기

  1. Subject Great Year

    Tracked from 체리필터의 인생이야기 :: 체리필터의 인생이야기 2016.07.22 02:24 delete

    프로그램 그리고 인생...

  2. Subject Great Discovery

    Tracked from 체리필터의 인생이야기 :: 체리필터의 인생이야기 2016.07.22 15:36 delete

    프로그램 그리고 인생...

  3. Subject Final Extasy

    Tracked from 체리필터의 인생이야기 :: 체리필터의 인생이야기 2016.07.23 17:31 delete

    프로그램 그리고 인생...

  4. Subject Gigimo Hymen

    Tracked from 체리필터의 인생이야기 :: 체리필터의 인생이야기 2016.07.25 22:53 delete

    프로그램 그리고 인생...

  5. Subject Josef Zedian

    Tracked from 체리필터의 인생이야기 :: 체리필터의 인생이야기 2016.07.27 11:04 delete

    프로그램 그리고 인생...

  6. Subject Kenia Jordahl

    Tracked from 체리필터의 인생이야기 :: PHP curl로 파일 전송할 때 mime type 같이 전송하기 2016.07.27 11:18 delete

    필요에 의해 html -

  7. Subject Courtney Warden

    Tracked from 체리필터의 인생이야기 :: 체리필터의 인생이야기 2016.07.27 11:54 delete

    프로그램 그리고 인생...

  8. Subject More Bonuses

    Tracked from 체리필터의 인생이야기 :: PHP curl로 파일 전송할 때 mime type 같이 전송하기 2016.07.29 07:38 delete

    필요에 의해 html -

  9. Subject get redirected here

    Tracked from 체리필터의 인생이야기 :: 체리필터의 인생이야기 2016.07.29 13:22 delete

    프로그램 그리고 인생...

  10. Subject Tuan Killough

    Tracked from 체리필터의 인생이야기 :: 체리필터의 인생이야기 2016.08.03 19:46 delete

    프로그램 그리고 인생...

  11. Subject Ahmad Bestwick

    Tracked from 체리필터의 인생이야기 :: 체리필터의 인생이야기 2016.08.04 04:41 delete

    프로그램 그리고 인생...

  12. Subject Bella Vita

    Tracked from 체리필터의 인생이야기 :: 체리필터의 인생이야기 2016.08.07 03:36 delete

    프로그램 그리고 인생...

  13. Subject your area

    Tracked from 체리필터의 인생이야기 :: PHP curl로 파일 전송할 때 mime type 같이 전송하기 2016.08.07 05:37 delete

    필요에 의해 html -

  14. Subject follow me

    Tracked from 체리필터의 인생이야기 :: 체리필터의 인생이야기 2016.08.07 11:14 delete

    프로그램 그리고 인생...

  15. Subject visit my blog

    Tracked from 체리필터의 인생이야기 :: 체리필터의 인생이야기 2016.08.09 07:38 delete

    프로그램 그리고 인생...

  16. Subject my website

    Tracked from 체리필터의 인생이야기 :: 체리필터의 인생이야기 2016.08.11 20:23 delete

    프로그램 그리고 인생...

  17. Subject google blog

    Tracked from 체리필터의 인생이야기 :: PHP curl로 파일 전송할 때 mime type 같이 전송하기 2016.08.12 01:08 delete

    필요에 의해 html -

  18. Subject my page

    Tracked from 체리필터의 인생이야기 :: 체리필터의 인생이야기 2016.08.12 19:13 delete

    프로그램 그리고 인생...

  19. Subject harga peralatan untuk bayi

    Tracked from 체리필터의 인생이야기 :: 체리필터의 인생이야기 2016.08.19 00:22 delete

    프로그램 그리고 인생...

  20. Subject daftar harga perlengkapan mandi untuk bayi

    Tracked from 체리필터의 인생이야기 :: PHP curl로 파일 전송할 때 mime type 같이 전송하기 2016.08.19 00:39 delete

    필요에 의해 html -