2012-11-20 4 views
0

사용자 게시 메서드를 사용하여 만들기 및 업데이트 할 수 있습니까?codeigniter를 사용하는 RESTFul 웹 서비스

리소스를 업데이트하기 위해 "PUT"메서드를 사용해 보았지만 서버 측에서 매개 변수를 가져 오지 않았습니다.

답변

1

PUT은 PHP (즉 $ _PUT) 또는 CodeIgniter를 통해 기본적으로 처리되지 않습니다. 내 머리 꼭대기에서 두 가지 일을 해내 야합니다. 1) PUT 변수를 직접 가져 오거나 2) Phil Sturgeon의 REST 라이브러리를 사용하십시오.

//put an associative array into $post_vars variable 
parse_str(file_get_contents("php://input"),$post_vars); 

자료 : 당신이 CodeIgniter를 작업하고 있기 때문에 당신이 진짜 이유가 없습니다에를 찾을 수없는 경우 http://www.lornajane.net/posts/2008/accessing-incoming-put-data-from-php

그러나 필 철갑 상어의 라이브러리를 사용합니다. 그것은 시험되고 사실이며 모든 HTTP 동사를 테스트하고 처리합니다.

https://github.com/philsturgeon/codeigniter-restserver

0

예. PUT 또는 DELETE 메소드에 대한 클라이언트 구현이 일관성이 없기 때문에 POST 요청을 보내고 A) 쿼리 문자열 매개 변수 (즉, ?_method=PUT)를 사용하거나 B) X-METHOD-OVERRIDE 헤더를 보내야합니다. 당신은 아마 만들 행동과 업데이 트 사이의 차이를 알 수 있도록 CI_Input 클래스를 확장 할 필요가

:

(http://www.endurasoft.com/Blog/post/X-HTTP-Method-Override.aspx 빠른 Google 검색이 반환).

+0

안녕하세요 Landons 어떻게 PHP에서이 응답을 구문 분석 할 수 있습니까? 나는 시도했다 $ result = $ ex-> getResponse(); $ xmlObj = simplexml_load_string ($ result); echo $ tracks = $ xml-> item-> company_name; – sree