我正在嘗試將API路由傳遞給Rails,以便服務器執行調用而不是客戶端。當我嘗試這樣做時,我找不到404。當我將這條路線傳遞給方法時,它可以在控制檯上找到。但不是來自ajax調用。這裏是我的控制器方法:從ajax調用傳遞參數到rails後端
def identification
@link = params[:link]
@response = MotorClient.new.response_from_path(@link)
render json: @response
end
這裏是我的路線:
get '/identification/:link', to: 'vehicles#identification', on: :collection
這裏是我的ajax:
handleRoute: function (e) {
this.handleChange(e);
e.preventDefault();
var options = e.target.options;
var route = "";
for (var i = 0, l = options.length; i < l; i++) {
if (options[i].selected) {
route = (options[i].dataset.route);
console.log(route)
$.ajax({
type: 'get',
url: '/vehicles/identification/',
dataType: 'json',
data: {"link":encodeURIComponent(route)},
success: function (data) {
this.props.getMakes(data);
}.bind(this),
})
}
}
},
當我CONSOLE.LOG路線我得到正確的串狀這個「/ v1 /信息/ YMME /年/ 2012 /完成/ 56 /模型」,就像我從軌道控制檯說,它的工作原理,但我不能正確地得到參數這是我得到的JavaScript控制檯,當我做通過ajax電話:
GET http://localhost:3000/vehicles/identification/?link=%252Fv1%252FInformation%252FYMME%252FYears%252F2012%252FMakes 404 (Not Found)
我在做什麼錯?
謝謝我刪除了/:鏈接,它工作。 –