2014-11-14 10 views
1

아약스를 사용하여 게시물을 편집 할 때 브라우저에서 오류가 발생했습니다. XMLHttpRequest에서 http://example.com/posts/100을로드 할 수 없습니다. 메서드 PUT은 Access-Control-Allow-Methods에서 허용되지 않습니다. 레일 서버에서방법 PUT은 Access-Control-Allow-Methods에 의해 허용되지 않습니다.

는 :

Started OPTIONS "/posts/100" for 127.0.0.1 at 2014-11-14 11:51:39 -0800 
    Processing by ApplicationController#handle_options_request as */* 
    Parameters: {"path"=>"posts/100"} 

나는 여러 솔루션을 통해 가서 rotues.rb이 같은했다 : application_controller.rb

def handle_options_request 
    headers['Access-Control-Allow-Origin'] = request.env['HTTP_ORIGIN'] 
    headers['Access-Control-Allow-Methods'] = 'POST, GET, OPTIONS' 
    headers['Access-Control-Max-Age'] = '1000' 
    headers['Access-Control-Allow-Headers'] = '*,x-requested-with' 
    head(:ok) if request.request_method == "OPTIONS" 
    end 

사람에

match '*path', :controller => 'application', :action => 'handle_options_request', :constraints => {:method => 'OPTIONS'} 

을 그걸 해결할 해결책이있다. 또한 (PUT 추가) 랙 고르 시도하지만

답변

2

는이 라인을 변경해보십시오 작동하지 않습니다

headers['Access-Control-Allow-Methods'] = 'POST, GET, OPTIONS, PUT'