나는 Ruboku on Rails 응용 프로그램과 함께 Safoku에서 실행 중입니다."object object"가 매개 변수로 실제 객체 대신에 전달되었습니다.
$.ajax({
type : 'POST',
url : '/test_page',
data : {stuff: arr1},
dataType : 'script'
});
arr1
이 객체의 배열 있어야한다 : 나는 다음과 같은 Ajax 호출이있다. 거기에 console.log
권리는 그 전에, 그리고 그것입니다
[Object, Object, Object, Object, Object, ...]
을하지만, 나는이 아약스 전화를했을 때 나는 서버 측에 오류가 발생했습니다. 나는 그것을 완벽하게 일했다, 이후 그것을 시도했습니다 때마다, 그것은 항상 (어쨌든, 그런 의미에서) 전에 완벽하게 작동했다 - 로그는 제가 오류를 복제 할 수없는거야
2012-10-01T03:13:34+00:00 app[web.1]: Parameters: {"stuff"=>"[object Object]"}
2012-10-01T03:13:34+00:00 app[web.1]: WARNING: Can't verify CSRF token authenticity
2012-10-01T03:13:34+00:00 app[web.1]: NoMethodError (undefined method `to_hash' for "[object Object]":String):
2012-10-01T03:13:34+00:00 app[web.1]: Completed 500 Internal Server Error in 1ms
을 보였다. 이 호출은 내가 테스트 케이스 중 하나이기 때문에 수십 번 만들었던 것과 정확히 똑같은 호출 이었으므로 전송 된 데이터를 변경하는 것과 아무런 관련이 없습니다. 그것은 나에게 정말로 혼란 스럽습니다. 그 문자열이 때때로 객체가 아닌 서버로 전달되는 원인은 무엇입니까?
"CSRF 토큰 신뢰성을 확인할 수 없습니다"행과 관련이있을 수 있습니다. 다른 성공적인 요청에 대해서는 로그에 표시되지 않기 때문입니다. .. http://lathamcity.com/posts/ajaxInRails.html
왜'dataType : script'입니까? – elclanrs
"arr1"을 매개 변수의 * 값 *으로 보내면 그 값을 얻습니다. 기본적으로 설정이 손상되었습니다. 개체를 개별 매개 변수로 보냅니다. – Pointy
js.erb 파일은 서버 측에서 렌더링되고 응답으로 실행됩니다. 수백 건의 서버 호출이있었습니다. –