제목 | uri 파싱 | ||
---|---|---|---|
글쓴이 | 도대체 | 작성시각 | 2014/04/28 15:00:11 |
|
|||
http://ip/snapshot.get?channel=1 위와 같은 uri 를 받으려면 controller를 어떻게 만들어야되나요 함수명에는 .get이 들어갈 수 없는데 uri rewrite 같은 작업을 해야되나요? |
|||
다음글 | 화면에 실시간 시계 또는 타이머 달 수 있나요 ? (4) | ||
이전글 | active record join 에서 정수형을 조건으... (2) | ||
한대승(불의회상)
/
2014/04/28 16:22:25 /
추천
0
|
도대체
/
2014/04/29 09:32:52 /
추천
0
xxx.xxx.xx.xxx/snapshot.get?channel=1
클라이언트에서 위의 URL로 요청을 보내기 때문에 컨트롤러를 맞춰서 구현해야합니다. /class/method 형태인데 저 URL은 아이피 뒤에 /가 한개 밖에 없어서 rewrite 로 "^/snapshot\.(.*)" => "/index.php/snapshot/$1" 요렇게 했는데 404 에러 발생하네요 직접 /index.php/snapshot/get 입력하면 해당 페이지 나옵니다. 좋은 방법 없나요? ㅜ |
한대승(불의회상)
/
2014/04/29 10:10:45 /
추천
0
route 를 사용해 보세요.
나만의 라우팅 사용하기 부분 참고 하시고 application/config/route.php 쪽에서 수정 하시면 됩니다. http://cikorea.net/user_guide_2.1.0/general/routing.html |
도대체
/
2014/04/30 11:23:57 /
추천
0
한대승님 답변 감사드립니다.
route 기능 아주 편리하네요.. 그런데 . 는 \. 로 확장시키니깐 매칭이 되는데 ? = 는 \로 확장해도 매칭이 안되네요 ㅜㅜ $route['snapshot(\.)get] = 'snapshot/get/4' 요런식으로 되지만 $route['snapshot(\.)get(\?)channel(\=)(:num) = 'snapshot/get/$4' 위처럼 하니깐 안됩니다. ㅜㅜ ? 와 = 는 앞단에서 다르게 처리되는것 같네요 .. 제가 접근을 잘못한것인지 어떻게 해야될까요 |
한대승(불의회상)
/
2014/04/30 11:48:23 /
추천
0
?는 GET 데이타 이므로
$this->input->get('channel');사용 하세요. |
도대체
/
2014/04/30 20:02:52 /
추천
0
감사합니다.
? 포함 그 이하의 쿼리스트링은 처리하지 않아도 get으로 접근가능하네요 감사합니다. ㅜㅜ 한대승님 |
http://ellislab.com/forums/viewthread/78812/
확장자가 하나로 고정 되어 있다면 application/config.php 의 $config['url_suffix'] 항목을 아래처럼 수정 해도 됩니다.