2010-06-15 1 views
2

내가 수동 jQuery를 AJAX 요청을 다음과 같은 방법으로 할 노력하고있어 :jQuery AJAX 요청 (Rails 3)이 리디렉션되고 빈 메시지 본문 (SSL 만 사용)을 반환합니다!

$("#user_plan_id").change(function() { 
    $("#plan_container").load('/plans/' + this.value); 
}); 

나는 "rails.js"파일 내 헤더에 포함이를, 그리고 "<% = csrf_meta_tag %>".

내 로그에서 요청은 서버에 도착합니다. (물론 정품 인증 토큰이 없어도 ...이 경우에도 rails.js가 실행됩니까?)하지만 응답은 200이 아닌 302 (Found)이며 데이터는 실제로 렌더링되지 않습니다.

아이디어가 있으십니까?

편집 : 이제 첫 번째 요청이 리디렉션되고 적절한 부분이 리디렉션에서 렌더링되는 것을 볼 수 있습니다. 그러나 두 번째 응답의 본문 (클라이언트 쪽)은 여전히 ​​비어 있습니다. 나는 jQuery가 첫 번째 응답을 사용하고 리디렉션에 대한 리스너를 설정하지 않았다고 생각한다. 이 문제를 어떻게 해결할 수 있습니까?

또 다른 참고 사항 : 요청하는 페이지는 HTTPS 페이지입니다. 여기

내 로그의 말씀입니다 :

Started GET "/plans/221168073" for 127.0.0.1 at Tue Jun 15 01:24:06 -0400 2010 
    Processing by PlansController#show as HTML 
    Parameters: {"id"=>"221168073"} 
DEPRECATION WARNING: Using #request_uri is deprecated. Use fullpath instead. (called from ensure_proper_protocol at /Users/ernestsurudo/Sites/vidfolia/vendor/plugins/ssl_requirement/lib/ssl_requirement.rb:57) 
Redirected to http://vidfolia.com/plans/221168073 
Completed 302 Found in 1ms 

그것은 내가 해당 페이지에 대한 SSL 요구 사항을 해제하는 경우, 작동 밝혀! 나는 아직도 이유를 모른다. 그래서 내 질문은 가정합니다 : 해결 방법은 무엇입니까?

+0

흠, 아마 rails.js가 Prototype이고 jQuery를 사용하고 있다는 사실과 관련이 있을까요? 다른 메모에서 "Rails 3을 사용하는 jQuery AJAX 요청이 리디렉션되어 빈 응답 본문이 반환됩니다"또는이 줄을 따라 질문과 같이 더 구체적인 질문을 시도하십시오. – dain

+0

rails.js에서 jQuery 버전을 사용하고 있지만 팁을 주셔서 감사합니다. 나는 제목을 편집 할 것이다. – elsurudo

+0

나는 대답이 [여기]라고 생각한다. (http://stackoverflow.com/questions/3634100/rails-3-ssl-deprecation) –

답변

1

어쩌면 당신이 어딘가에서 "http"로 프로토콜을 설정합니까?