나는 파일을 다시 레일즈 애플리케이션에 보내는 uploadify 컴포넌트를 가지고있다. 어떤 점에서 주목할만한 문제는 전달 된 일부 특수 데이터 값이 플래시 객체에 의해 변경된다는 것입니다. 클라이언트 측에 swfupload/uploadify의 매개 변수를 Rails 앱에 전달하면 오류가 발생합니다.
나는 레일지고 무엇$(document).ready(function() {
$('#photo_image').uploadify({
...
'scriptData': {
authenticity_token = 'M++Q3HNclKS7QBEM71lkF/8IkjTwr2JdtqJ4WNXVDro='
...
}
});
});
있습니다
"authenticity_token"=>"M Q3HNclKS7QBEM71lkF/8IkjTwr2JdtqJ4WNXVDro="
토큰 모든에는 '+'기호가없는
가 잘 작동합니다. 플래시가 어떻게 든 문자열을 변경하는 것 같습니다. 어떤 생각을 어떻게 피할 수 있을까요? 나는 이는 cgi를 시도했지만 결과는 특수 문자 인코딩에 encodeURIComponent()를 사용할 필요가 ... '+'제거됩니다,
내가 아는 한 JS encodeURIComponent는 Rails의 CGI.escape 또는 "u"헬퍼와 동일합니다. 어느 쪽이든, 그것은 문제를 해결하지 못했습니다. 문제는 uploadify가 플래시 구성 요소에 매개 변수를 전달하기 전에 많은 코딩/인코딩 작업을 수행한다는 것입니다. 실제 해결책은 토큰을 두 번 이스케이프 처리하는 것입니다. 예를 들어 "encodeURIComponent (encodeURIComponent (token)))"또는 # {u u token}과 같이 입력하십시오. – mdrozdziel